1 분 소요

TIL

Javascript 개념

정규 표현식

/regex?/


그룹 / 레인지

/(Hi|Hello)/gm;

Hi 아니면 Hello를 group1 으로 하나로 지정

/(Hi|Hello)|(And)/gm;

group1(Hi,Hello)이거나 group2(And)를 선택

/gr(e|a)y/gm;

grey 이거나 gray 찾음 (group 지정)

/gr(?:e|a)y/gm;

grey or gray 찾음 (group 지정 X)


* 위에 걸 총 망라하는 것이 바로 []

/gr[a-z]y/gm;

gray부터 grby, … , grzy까지 찾음

/[a-zA-Z0-9]/gm;

a to z / A to Z / 0 ~ 9인 것을 다 찾음

/[^a-zA-Z0-9]/gm;

a to z / A to Z / 0 ~ 9아닌 것을 다 찾음 ([] 안에서 ^은 not)

수량

/gra?y/gm;

a가 있거나 없거나 한 것을 찾음 (gray / gry)

/gra*y/gm;

a가 있거나 없거나 많거나 한 것을 찾음 (gray / gry / graay / graaay / graaa…aay )

/gra+y/gm;

a가 있거나 많거나 한 것을 찾음 (gray / graay / graaay) / gry는 찾지 않는다.

/gra{2,3}y/gm;

a가 최소 2개, 최대 3개 있는 것을 찾음 (graay / graaay)
{2}만 쓰면 항상 두 개 찾음 (graay)
{2,}만 쓰면 최소 두개 이상 찾음 (graay / graaay / graaaay …)

바운드리 타입 (단어 경계)

/\bYa/gm;

Ya인데 단어 앞에서 쓰이는 Ya를 찾음

/Ya\b/gm;

Ya인데 단어 뒤에 쓰이는 Ya를 찾음

/Ya\B/gm;

Ya인데 단어 뒤에 쓰이는 Ya가 아닌 Ya를 찾음
(이렇게 되면 만약에 \b를 쓴 것 중에는 Ya 라고만 되어 있는 문자열은 찾지만
\B을 쓰게 되면 Ya 만 있는 문자열은 찾지 않게 된다.)

/^Ya/gm;

문장에 시작된 Ya를 찾음

/Ya$/gm;

문장에 뒤에 붙어있는 Ya를 찾음
(하지만 m을 빼면 전체 문장에서 찾기 때문에 주의)

문자

/\[\]\{\}/gm;

[], {}와 같이 이렇게 특수 문자인 경우에는 백슬래시를 적용해야 찾을 수 있음

/\d/gm;

숫자를 전부 찾음

/\D/gm;

숫자가 아닌 전부를 찾음

/\w/gm;

word 즉 문자를 찾음

/\W/gm;

문자가 아닌 것을 모두 찾음

/\s/gm;

space를 찾음

/\S/gm;

space를 제외한 모든 것 찾음

댓글남기기