운전 면허증 유효성 검사를 위해 RegEx를 작성하고 싶습니다.RegEx 표현 작성
(US, CA, CN)으로 시작하지 않으면 XX와 그 다음에 알파 숫자 문자가 올 수 있습니다.
예를 들어 운전 면허가 GB로 시작하는 경우 XXGBXX12345363 으로 시작해야합니다. 그러나 미국으로 시작하면 이후에 오는 것이 중요하지 않습니다. USLA039247230
운전 면허증 유효성 검사를 위해 RegEx를 작성하고 싶습니다.RegEx 표현 작성
(US, CA, CN)으로 시작하지 않으면 XX와 그 다음에 알파 숫자 문자가 올 수 있습니다.
예를 들어 운전 면허가 GB로 시작하는 경우 XXGBXX12345363 으로 시작해야합니다. 그러나 미국으로 시작하면 이후에 오는 것이 중요하지 않습니다. USLA039247230
누구나 운전 면허증에 익숙하지 않다는 것을 기억하십시오. 다음은 정확한 사양입니다 (정규식을 요청할 때 매우 정확하게하려고해야합니다. 그렇지 않으면 얻을 수없는 것들을 얻을 것입니다.) 원하는 :
이어야한다 편지는 US, CA 또는 CN 중 아무 것도 아니므로 다음 두 글자는 X 여야하고, 나머지는 X가되어야합니다. 영숫자이고 불특정 길이 여야합니다.
((미국 | CA | CN) [A-Za-z0-9] + | < (US | CA | CN)) [AZ] {2} XX [A-ZA-Z0-9] +)
첫 번째 부분 :!
두 번째 부분 :
이 있습니다
바깥 괄호 안의 파이프는 둘러보기가 완전히 필요하지 않게 만듭니다. – eyelidlessness
또한, "* 숫자가 아닌 숫자를 의미하는"숫자를 읽지 만 논쟁의 여지가 있습니다. 잘못 정의 된 문제. – eyelidlessness
/^(?:(?:US|CA|CN)\w+|[[:alpha:]]{2}XX\w+)$/
내가 할 수있는 더 검증이 있는지 모르겠지만, 이것은 내가 (번호 뒤에 네 글자를 의미하는 것)하여 예, 당신이 쓴 것과하지 얻을 것입니다.
\ w는 _에도 일치합니다. –
정규 표현식 라이브러리에서 허용하는 경우 Look Behind 기능을 사용할 수 있습니다.
/^((US|CA|CN)[a-zA-Z\d]*|[a-zA-Z]{2}XX[a-zA-Z\d]*)$/
제목을 "Writing RegEx Expression"으로 수정할 수 있습니까? –