2012-10-07 6 views

답변

8

첫 번째 일치하는 하나의 [a-zA-Z] 다음에 0 이상 [a-zA-Z].

두 번째 숫자는 0 이상 [a-zA-Z]과 일치합니다.


첫 번째 숫자는 [a-zA-Z]+ 일 수 있습니다.

+0

'. +?'와'. *? '를 설명해 주시겠습니까? – holys

+0

'. +? x'는'asdfxxcccxxxx'와 일치하지만 첫 번째 x는 그렇지 않습니다. – holys

+0

@cdh, 죄송합니다. 댓글이 잘못되었습니다. '. +? x'는 "anything"이 적어도 하나의 문자를 포함하는 한, 첫 번째 x까지는 어떤 것과도 매치 할 것입니다. ('. +'는 한 번 이상의 문자를 의미합니다 - [예] (http://refiddle.com/ gcp)). '. *? x'는 똑같은 일을 할 것입니다. 그러나 x 앞에 아무 것도 없더라도 ('. *'는 0 번 이상을 의미합니다). – rid

2

정규식 [a-zA-Z][a-zA-Z]*알파벳의 수에 따라 선택적으로 한 alpabetic 문자 이있을 것을 명령하는 것을 의미한다. 반면에 [a-zA-Z]*은 알파벳 위임이 완전히 해제되었음을 의미합니다.

예를 들어, 첫 정규 표현식은 azxxx, abccdef 문자열과 일치하지만 2abcd, 22 및 빈 문자열은 실패합니다. 하지만 두 번째 정규식은 빈 문자열에도 일치 할 수 있습니다.

첫 번째 정규식 대신 다음과 같이 말하면됩니다. [a-zA-Z]+.