정규식
-
[Regex] test() 사용시 전역 플래그(g 플래그)개발/Javascript 2022. 8. 31. 14:34
공식문서의 내용을 참고하면 좋다. 전역 플래그는 모든 문자열에서 정규식 규칙을 찾는데, test()에서 사용할 때(exec도 동일) 일치하는 문자열을 찾으면(true) 다음 탐색을 위해 lastIndex를 갱신한다. 일치하는 문자열을 못 찾으면(false) lastIndex을 0으로 초기화한다. 이메일 정규식으로 테스트해보자. const emailRegex = /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/g; .com으로 끝나는 정상 이메일 주소를 입력해보자. co까지 입력하면 true가 나오는데 m을 입력하는 순간 false가 판정된다. 검사 의도는 com으로 입력을 완료했을 때 true가 나와야 하는 것이다. 왜냐하면 마지막 true 판정이 com의 o이기 때문에, 탐색을 이어가기 위..