1. <xsd:pattern value = "[0-9][0-9]*"/>
및
2. <xsd:pattern value = "[0-9]*"/>
는 동일한 결과를 생성
이다. 그래서 그들 사이의 차이점은 무엇입니까? 미리 감사드립니다.1. <xsd:pattern value = "[0-9][0-9]*"/>
및
2. <xsd:pattern value = "[0-9]*"/>
는 동일한 결과를 생성
이다. 그래서 그들 사이의 차이점은 무엇입니까? 미리 감사드립니다.첫 번째 것은 하나 이상의 숫자와 일치합니다. 두 번째 숫자는 0 이상의 숫자와 일치합니다.
문자 *
은 이전 패턴이 패턴 일치를 위해 0 번 이상 반복 될 수 있음을 의미합니다.
그래서 [0-9][0-9]*
은 "1 자릿수 뒤에 0 자 이상"을 의미하는 반면, [0-9]*
은 "0 이상의 자릿수 (즉, 빈 문자열도 일치 함을 의미)"를 의미합니다.
첫 번째 패턴은 처음 두 문자가 0-9 중 하나 여야하고 나머지는 아무것도 아니지만 두 번째 패턴은 첫 번째 문자가 0-9이어야하며 나머지는 아무거나 될 수 있다고 말합니다.
그들은 같은 것을 의미하지는 않지만 둘 다 문자열에 숫자가있는 곳을 통과하게됩니다.
[0-9] *는 아무런 숫자도 포함하지 않은 문자열, 심지어 빈 문자열에서도 일치하지만 [0-9] [0-9] *는 하나 이상의 숫자가 필요합니다.
별로는 아닙니다. 패턴은 각각 1+ 또는 0+ 문자와 일치합니다. –