STUDY/문자열
정규표현식
빵아찌
2022. 8. 16. 00:36
정규표현식은 주어진 문자열 속에서 특정 패턴을 가진 문자열을 찾을때 사용합니다.
범용 고유 식별자(UUID)처럼 특정 규칙이 있는 식별자나 사용자 이름, IP 주소, URL 등 여러 문자열로부터 패턴을 가진 정보를 찾아야 할 때 사용할 수 있습니다.
문자집합 | 예시 | |
[] | [] 안에 있는 문자 중 하나 | [ab]cd → acd, bcd ... [a-zA-Z]cd → Zcd, acd, bcd ^[a-zA-Z] → 영문자로 시작 "[가-힣]" → 완성된 문자열만 가능 |
. | 임의의 한 문자 | e.t → eat, ext, ect, est ... |
* | 바로 앞의 문자가 없거나 하나 이상 | e*t → t, et, eet, eeet, eeeet ... |
+ | 바로 앞의 문자가 하나 이상 | e+t → et, eet, eeet ... |
? | 바로 앞의 문자가 없거나 하나 | e?t → t, et |
^ | 바로 뒤의 문자열로 시작 | ^a?bc → bc, abc ... ^The → The guardian 뒷부분부터 공백까지 |
$ | 바로 앞의 문자열로 종료 | a?bc$ → abc, bc, eatabc, testbc ... |
() | () 안에 있는 문자를 그룹화 | a(bc){2}→ abcbc ... a 다음 bc가 2번 나와야함 |
{} | {} 앞의 문자나 문자열 출현 횟수 min, max | a{2,}b → aab, aaab, aaab a{2,3}b → aab, aaab 최소 2번 |
[a-z] | 영어 소문자 | |
[A-Z] | 영어 대문자 | |
[0-9] | 숫자 | |
[k-p] | 알파벳 k ~ p까지 | |
[1-5] | 숫자 1 ~ 5까지 | |
\ | 특수 문자 사용 | \*+ → * 가 하나 이상 포함된 패턴 \d : 순수한 숫자, 정수값, 0-9 \d{2,3}-/d{3,4}-/d{4} : 전화번호를 찾는 정규식 -? 하이퍼뒤에 물음표가 있으면 -가 있어도 되고 없어도 된다는 뜻 \D : 숫자가 아닌 나머지 모든 얘. \w : [a-zA-Z0-9] 의 줄임표현. \W : [^a-zA-Z0-9] 영문자와 숫자만 아니면 된다는 뜻. \s : 공백 \S : 공백이 아닌 나머지 얘들. |
도움이된 페이지
https://jacking75.github.io/csharp_RegularExpression/
학교에서 알려주지 않는 17가지 실무 개발 기술