본문 바로가기

기타

[QnA] 정규표현식 질문

반응형


Q.  정규표현식 질문

5~12자의 영문 소문자, 숫자와 특수기호(_),(-)만 사용 가능하고 

영문과 숫자를 꼭 조합해서 써야되고요. 

그리고 처음에 오는 글자는 꼭 알파벳 소문자만 되게끔 정규표현식을 만들어야 합니다.

 

현재까지 만든 패턴은  

[ /^[a-z][a-z0-9_-]{4,11}$/ ]

 
이 패턴에서 더 추가해줘야할 부분을 알려주세요.



 
A.

/^[a-z](?=.*?[0-9])[a-z0-9_\-]{4,11}$/

 

위에서 빨간색으로 해놓은  부분이 필요하겠네요.


(?=) 는 look forward라고 해서 이 부분 다음으로 어떤 내용이 올거다라는 부분인데요.
(?=.*?[0-9]) 라고 하면 첫번째 글자 다음부터 시작해서 아무 글자가 쭉 나오다가 숫자가 나온다는
의미입니다. 만약 숫자가 안들어있다면 이 조건을 만족할 수 없어서 매치가 안됩니다.



https://regex101.com/r/eC1lO4/1

반응형