정규표현식 모음

김태은·2020년 1월 13일
0

모음집

목록 보기
3/6

1. 정규표현식

정규표현식 (Regular Expression ) : 프로그래밍에서 사용하는 일종의 형식 언어. 주로 문자열(string) 관련 프로그래밍에 사용됨.

javascript 에서의 사용법

str.match(정규표현식) //정규표현식에 해당하는 문자 여부 찾기
str.replace(정규표현식, '교체할문구') //정규표현식에 해당하는 문자 교체
str.search(정규표현식) //정규표현식에 해당하는 문자가 몇번째 index에 있는지 찾기

2. 문법

/ 정규표현식 문법 /플래그

3. 규칙1 (정규식 문자표현)

  1. \w
    : 문자(character), [0-9a-zA-Z_]와 같은 문법

  2. \W
    : \w가 아닌것

  3. \d
    : 숫자, [0-9]와 같음

  4. \D
    : /d가 아닌것

  5. \s
    : 공백문자

  6. \n
    : 개행문자

  7. . (와일드카드)
    : 모든 문자

4. 규칙2 (정규식 패턴)

  1. []
    : 이 속에 있는 거 하나라도 있으면 매칭, [abc][a-z] [0-9] 등
  1. [^]
    : 해당 조건 문자 제외하고 매칭, [^abc] a랑b랑c는 모두 제외함

  2. ?
    : 앞 문자가 있을 수도 없을 수도 있다

  3. ^ $
    : 문자열의 처음과 끝을 의미 — /m과 같이써야함 (멀티라인)

  4. + *
    (+) : 앞 문자가 1개 이상 있어야 매칭 a1 a12 a 에서 a는 매칭x
    (*) : 앞 문자가 0개 이상 있으면 매칭 a1 a12 a 에서 a도 매칭

  5. {n}
    {n} : 앞 문자가 n개 이상있음
    {n,m}, {n, } : 앞 문자가 n개 이상 (m개 이하)

  6. ()
    처음에 문서를 봐도 이해를 못했는데 split()시 나도 포함시켜줘! 이런의미로 우선 이해하기!

'#감성 #감성사진 좋다! #맞팔'.split(/#[^\s]+/g)
// (4) ["", " ", " 좋다! ", ""]
'#감성 #감성사진 좋다! #맞팔'.split(/(#[^\s]+)/g)
// (7) ["", "#감성", " ", "#감성사진", " 좋다! ", "#맞팔", ""]

5. 추가규칙3 (전후방탐색)

  1. 탐색할문자(?=조건)
    \d+(?=px) -> 뒤에 px을 빼고 숫자만 가져옴

  2. (?<=조건)탐색할문자
    (?<=\$)\d+ -> 앞에 $를 빼고 숫자만 가져옴

6. /플래그

  1. /g
    : 둘 이상의 일치 항목을 찾음
  2. /i
    : 대소문자 구분 없이 찾음
  3. /m
    : 주어진 문자열에 줄바꿈이 있을 경우, 여러 줄로 취급하여 찾음
profile
프론트엔드 개발 공부블로그

0개의 댓글