Regular Expression 정규표현식
Regular Expression는 문자열에서 어떤 문자가 특별한 의미를 갖는 것을 말한다.
예를 들어, \d는 0에서 9사이의 숫자를 의미하게 된다.
Regular ExpressionDescription
. | 어떤 문자 1개를 의미 |
^regex | ^ 다음 regex로 line을 시작하는지 |
regex$ | $ 앞의 regex가 line의 마지막으로 끝나는지 |
[abc] | a, b, c 중의 문자 1개 |
[abc][vz] | a, b, c 중에 문자 1개와 v, z 중에 문자 1개의 조합 |
[^abc] | a, b, c를 제외한 문자 1개 |
[a-d1-7] | a |
X|Z | X 또는 Z |
\d | 0~9 사이의 숫자, [0-9]와 동일 |
\D | 숫자가 아닌 어떤 문자, [^0-9]와 동일 |
\s | whitespace 1개, [\t\n\x0b\r\f]와 동일 |
\S | whitespace를 제외한 문자 |
\w | Alphanumeric(alphabet, 숫자) 문자, [a-zA-Z_0-9]와 동일 |
\W | Alphanumeric을 제외한 문자(whitespace 등) |
\S+ | whitespace를 제외한 여러 문자 |
\b | 단어의 경계(공백)를 찾습니다 |
[ ] | 한개의 문자를 의미 |
.\ | . |
? | 없음 또는 한개 |
* | 없음 또는 한개 이상 |
+ | 한개 이상 |
{n} | 정확히 n개 |
{n,} | 최소한 n개 |
() | 그룹핑 |
예를 들어 010-1234-1234 와 같은 전화번호 정규 표현식을 작성해보자면
1. 앞자리 011 안됨 무조건 010으로 시작
2. 중간에 - 가 들어가야 인정
3. 중간 4자리, 마지막 4자리 지켜야 함
답안 : (010)-\d{3,4}-\d{4}
hello@naver.com 와 같은 이메일 정규 표현식을 작성해보자면
1. @반드시 있어야함
2. .이 반드시 있어야함
답안 : \w+@\w+.\ \w+(\. \w+)?
'내일배움캠프 > Today I Learned' 카테고리의 다른 글
[내배캠] 나의 스물두번째 회고록 (0) | 2022.12.06 |
---|---|
[내배캠] 나의 스물한번째 회고록 (0) | 2022.12.05 |
[내배캠] 열아홉번째 회고록 (0) | 2022.11.30 |
[내배캠] 열여덟번째 회고록 (0) | 2022.11.30 |
[내배캠] 열일곱번째 회고록 (2) | 2022.11.29 |