728x90
VSCode에서 주석 백그라운드 색 지정을 하면서 regex를 사용해야 했습니다. 평소에 정리해야지 했었는데 이번을 기회로 정리하게 되었습니다. Regular Expressions (Regex) Tutorial: How to Match Any Pattern of Text를 참조하였고 자세한 내용을 동영상을 참고하셔도 좋을 것 같습니다.
주요 regex
. - Any Character Except New Line
\d - Digit (0-9)
\D - Not a Digit (0-9)
\w - Word Character (a-z, A-Z, 0-9, _)
\W - Not a Word Character
\s - Whitespace (space, tab, newline)
\S - Not Whitespace (space, tab, newline)
\b - Word Boundary
\B - Not a Word Boundary
^ - Beginning of a String
$ - End of a String
[] - Matches Characters in brackets
[^ ] - Matches Characters NOT in brackets
| - Either Or
( ) - Group
Quantifiers:
* - 0 or More
+ - 1 or More
? - 0 or One
{3} - Exact Number
{3,4} - Range of Numbers (Minimum, Maximum)
대문자 : not
d = digit = 숫자
w = word = 문자
s = space = 공백, 탭, 새로운 라인
b = boundary = 공백을 기준으로 양 옆의 문자
^ = 시작
$ = 끝
( ) = 그룹
[ ] = 매치
[^ ] = not 매치
| = or 혹은 그냥 regex 두개 붙히면 됨
- = 0 +
- = 1 +
? = 0 1
{ } = 정확한 숫자
{1, 3} = 1과 3사이의 숫자 = [1-3]
예제1
CoreyMSchafer@gmail.com
corey.schafer@university.edu
corey-321-schafer@my-work.net
[a-zA-Z0-9_.+-]+@[a-zA-Z0-9_.+-]+\.(com|net|edu)
- [ ]+
- 안의 내용이 하나 또는 그 이상이 매칭될 경우
예제2
https://www.google.com
http://coreyms.com
https://youtube.com
https://www.nasa.gov
http?://(www\.)?\w+\.\w+
- http?
- http 뒤 한자리에 문자가 없거나 하나가 있을 경우
- ex) http | https
- (www.)?
- www. 그룹이 있거나 없거나
- \w+
- 하나 이거나 그 이상의 문자가 있는 경우
728x90