- 정규 표현식에 사용되는 특수 문자
- '*'
- 바로 앞의 문자가 없거나 하나 이상인 경우
- s*e -> e, se, see, ssse, …
- abc* -> ab, abc, abcc, abccc, …
- h*im -> im, him, hhim, hhhim, …
- '?'
- 바로 앞의 문자가 없거나 하나뿐인 경우
- th?e -> e, the 두가지 표현이 유일함
- '^'
- 바로 뒤의 문자열로 시작
- ^The.. 뒷부분부터 공백까지 검사. -> The girl is, Theather
- ^a?bc -> bc, abc, …
- ^.e -> he, me, request, settle, …
- ^s.e?.. E는 나와도되고 안나와도 됩니다. -> sa, sae, sb, sbe, …
- '$'
- 바로 앞의 문자열로 종료
- a?bc$ -> eeabe, seebc, bc..
- +.e$ -> onthetoe, bctae, appetittle, …
- s?c+$ -> e, se, ee, eee, seee, seee, …
- '[ ]'
- [ ] 안에 있는 문자 중 하나(범위의 경우 '-'로 지정합니다.)
- [0-9] -> 숫자
- ag[a-z] -> aga, agbcd, agzzz, …
- ^ab[cd]ef -> abcef, abdef, …
- ^[a-zA-Z] -> 영문자로 시작
- ^[가-힣] 한글로 시작해야 할 때
- [a^-zA-Z0-9] -> '^' 표시가 대괄호 안으로 들어갈 경우 제외의 의미가 됩니다. 부정의 의미. ->영문자나 숫자로 시작할 수 없습니다.
- [a-zA-Z0-9]$ -> 영문자나 숫자로 종료
- "[가-힣]" -> 한글 완성형만 가능합니다. "ㅋㅋ", "ㅎㅎ" 같은 구문은 불가능합니다.
- "[abc]" -> abc중 하나라는 뜻 -> c#문법으로 if("a" || "b" || "c")와 같음.
- '{ }'
- { } 앞의 문자나 문자열의 출현 횟수, Schema에서 min / maxoccur과 같은 개념
- a{2}b -> aab, … -> a가 꼭 2회 나와야 함
- a{2, }b -> aab, aaab, aaaab, … -> a가 2회 이상 나와야 함
- a{2, 3}b -> aa, aaab -> a가 2회~3회 나와야 함
- '( )'
- ( )안에 있는 문자를 그룹화
- a(bc){2} -> abcbc -> a 다음 bc가 2회 나와야 함
- a(bc)* -> abcbcbcbc -> a 다음 bc의 출현이 무한대로 가능 함
- '|'
- or 연산자
- 영어로만 아이디를 만들라 -> [a-zA-Z]+ 공백없는 영어단어
- (He|She)is -> Heis, Sheis
- 특수문자 사용
- ^ [] $ () | * + ? {} \
- 앞부분에 \를 붙여서 사용합니다.
- \*+ -> *가 하나 이상 포함된 패턴.. -> *나 **나 ***이 무한대로 가능
- \d{2, 3} - / d{3,4} - / d{4} : 전화번호 찾는 정규식
- \D : 숫자가 아닌 나머지 모두
- \w : [a-zA-Z0-9]의 줄임 표현
- \W : [^a-zA-Z0-9] 영문자와 숫자만 아니면 됨.
- 예제
- 전화번호를 찾는다.
- [0-9]{2,3}-[0-9]{3,4}-[0-9]{4}
- 주민등록번호
- [0-9][0-9][01][0-9][0123][0-9]-[1234][0-9]{6}
카페 게시글
검색이 허용된 게시물입니다.
C#
c# 정규 표현식 검사 방법 & Regex.Replace 사용 (펌)
창공
추천 0
조회 3,585
16.01.20 14:53
댓글 0
다음검색