JavaScript

Javascript 정규표현식(regexp)을 알아봅시다!

ITSkeleton 2020. 6. 22. 23:57
728x90
반응형

정규표현식은 특정한 규칙을 가진 문자열의 집합을 표현하는 데 사용하는 형식 언어 입니다.

1. 플래그

  • g (global) : 전역 범위에서 해당하는 모든 문자를 찾습니다.
  • i (case insensitive) : 대소문자 구분을 하지 않습니다.
  • m (multiline) : ^와 $문자와 같이 비교를 하는데 다중 행에서 ^와 $ 문자는 각각 문자열의 처음과 끝을 의미합니다.
  • y (sticky) : 문자열에 lastIndex 속성을 설정 하고나면 그 index부터 일치하는 문자를 찾습니다

2. 문자 클래스

  • \w : A-Z,a-z,0-9,_ 을 확인합니다
  • \W : 일치하지 않는 문자들을 확인합니다
  • \d : 임의의 숫자와 일치 여부를 확인합니다
  • \D : 숫자가 아닌 모든 문자를 확인합니다
  • \s : 공백 문자(공백, 탭, 줄바꿈) 일치 여부를 확인합니다
  • \S : 공백 문자가 아닌 문자를 확인합니다

3. 예제

숫자 하나 찾기 : /[0-9]/g

a또는 b를 모두 찾기 - /[ab]/g

'test' 매칭되는것 찾기- /test/g

'to' 라는 단어를 빼고 다른 단어 매칭 - \b(?!\bto\b)\w+\b

이메일 - /^[0-9a-zA-Z]([-_\.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-_\.]?[0-9a-zA-Z])*\.[a-zA-Z]{2,3}$/i

전화번호 - /^\d{3}-\d{3,4}-\d{4}$/

핸드폰 번호 - /^01([0|1|6|7|8|9]?)-?([0-9]{3,4})-?([0-9]{4})$/

URL - ^(https?):\/\/([^:\/\s]+)(:([^\/]*))?((\/[^\s/\/]+)*)?\/?([^#\s\?]*)(\?([^#\s]*))?(#(\w*))?$

728x90
반응형