1. 패턴(표현)
정규표현식에는 다양한 패턴(표현)이 있습니다. 그 패턴의 의미(기능)와 직관적으로 매칭되지 않기 때문에 외우지 않는 이상 의미를 파악할 수 없습니다. 이번에는 이러한 패턴에 대해 살펴봅시다.
1.1 자주 사용되는 패턴(1)
패턴 | 설명 |
---|
[abc] | a 또는 b 또는 c |
[a-z] | a부터 z 사이의 문자 구간에 일치(영어 소문자) |
[A-Z] | A부터 Z 사이의 문자 구간에 일치(영어 대문자) |
[0-9] | 0부터 9 사이의 문자 구간에 일치(숫자) |
[가-힣] | 가부터 힣 사이의 문자 구간에 일치(한글) |
1.2 사용 예제(1)
const str = `
010-1234-5678
the7632@gmail.com
https://www.omdbapi.com/?apikey=2181d79b&s=frozen
The quick brown fox jumps over the lazy dog.
abbcccdddd
http://localhost:1234
동해물과 백두산이 마르고 닳도록
`
console.log(str.match(/[fox]/g))
console.log(str.match(/[0-9]/g))
console.log(str.match(/[0-9{1,}]/g))
console.log(str.match(/[가-힣{1,}]/g))
2.1 자주 사용되는 패턴(2)
패턴 | 설명 |
---|
\w | 63개 문자(Word, 대소영문52개 + 숫자 10개 + _)에 일치 |
\b | 63개 문자에 일치하지 않는 문자 경계(Boundary) |
\d | 숫자(Digit)에 일치 |
\s | 공백(Space, Tab 등)에 일치 |
2.2 사용 예제(2)
const str = `
010-1234-5678
the7632@gmail.com
https://www.omdbapi.com/?apikey=2181d79b&s=frozen
The quick brown fox jumps over the lazy dog.
abbcccdddd
http://localhost:1234
동해물과_백두산이 마르고 닳도록
`
console.log(str.match(/\w/g))
console.log(str.match(/\b/g))
console.log(str.match(/\bf\w{1,}\b/g))
console.log(str.match(/\d{1,}/g))
console.log(str.match(/\s/g))
const h = ` the hello world !
`
console.log(h.match(/\s/g))
console.log(h.replace(/\s/g, ''))
3.1 자주 사용되는 패턴(3)
패턴 | 설명 |
---|
(?=) | 앞쪽 일치(Lookahead) |
(?<=) | 뒤쪽 일치(Lookbehind) |
3.2 사용 예제(3)
const str = `
010-1234-5678
the7632@gmail.com
http://www.omdbapi.com/?apikey=2181d79b&s=frozen
The quick brown fox jumps over the lazy dog.
abbcccdddd
`
console.log(str.match(/.{1,}(?=@)/g))
console.log(str.match(/(?<=@).{1,}/g))