옵션 | 설명 |
---|---|
g | 글로벌 |
i | 대소문자 구별을 하지 않는다 |
u | 유니코드 매칭 |
그 밖에도 여러 옵션이 있는데 아직 사용한 일이 없음.
(...) : 괄호를 통해 캡쳐를 하는 그룹을 나눌 수 있다.
# 글로벌하게 . $ ? * | { } ( ) [ ] \ / + ^ 중 해당되는 것들 캡쳐링됨.
/([\.$?*|{}\(\)\[\]\\\/\+^])/g
# = 뒤에 문자가 캡쳐링 되는데 이때 ;는 제외된다.
=([^;]*)
# ?: 는 캡쳐링을 하지 말라는 의미. 그리고 ^는 시작부분을 의미 |는 or을 의미. 즉 그냥 시작하거나 ;로 시작하는데 캡쳐링은 하지 말라는 의미
(?:^|;)
(?) 형태로 네이밍 그룹화한 정규식 캡쳐가능
const str = '/wv/promotion/3'
const reg = /^\/wv\/promotion\/(?<a>\w+)$/
reg.exec(str).groups // {a:'3'}
?:
을 통해 그룹핑만하고 캡쳐에서는 제외하는 것도 가능하다.