본문 바로가기
프로그래밍/Swift

Swift 정규 표현식 규칙에 대한 이야기

by Mr-후 2021. 7. 14.
반응형

정규식 abc 의 경우 xyzabcxyzbc 일 때 문자열 abc와 일치한다. 

정규식 12345의 경우 1234567890에서 문자열 12345와 일치한다. 

꺽쇠 괄호 ([])를 사용하면 문자 집합(character sets)을 정의할 수도 있다. 문자 집합은 집한 안에 있는 문자와 문자열에 있는 하나의 문자와 일치할 것이다. 집합을 정의하기 위해서는 문자열을 사용하거나 범위를 명시하기 위해 - (마이너스 기호) 연산자를 사용할 수 있다. 

정규식 [abc] 의 경우 xyzabcxyz 에서 abc집합에 있는 문자와 일치한다. 

정규식 [a-zA-Z]의 경우 xyzabcxyz에서 소문자 또는 대문자에 일치한다. 

반복 횟수를 명시하기 위해서는 중괄호({})를 사용해 하나 이상의 문자를 일치시킬 수 있다. 
{2, 5} 의 경우 이는 적어도 2개의 문자 이상, 5개의 문자 이하를 일치시키겠다는 것을 의미한다. 

정규식 [a-z] {2,5}  xyzabcxyz 에서 2에서 5개 사이의 소문자와 일치한다. 
정규식 [a-z0-9]{2,5}는 xyzabcxyz문자열에서 2에서 5개 사이의 소문자 또는 숫자와 일치한다. 

맨 처음 쓰이는 캐럿(^)은 맨 처음과 일치시키길 원한다는 의미이며, 
달러 기호($)는 맨 마지막과 일치시키길 원한다는 의미다. 문자열 전체를 일치시키는 데 이러한 두 개의 특수한 문자를 사용할 수 있다. 

정규식 ^[a-z]{0,5}$ 패턴은 문자열이 0에서 5개의 소문자일 경우에만 일치시킬 것이다. 소문자 사이에 다른 언어가 있거나 문자가 5개 넘을 경우 매칭에 실패한다. 

정규표현식의 추가적인 특수 문자. 백슬래시(\)를 사용해 이스케이프해야만 하는 문자열이 있으며 이들은 특별한 의미를 가진다. 

 

. -> 점은 임의의 단일 문자와 일치한다. 
\n -> 개행 문자(new line)와 일치한다. 
\t -> 탭 
\d -> 숫자 [0-9] 
\D -> 숫자가 아닌 문자 
\w -> 영문자 숫자 [a-zA-Z0-9]와 일치 
\W -> 영문자 숫자가 아닌 문자와 일치 
\s -> 공백 문자 
\S -> 공백이 아닌 문자 

 

이 외에도 더 많은 내용이 있고 깊이 있는 학습이 많은 문제를 해결하는데 도움을 줄 것이다. 

 

 

반응형