NSRegularExpression : 정규식 사용하기 – Swift

Swift의 정규식

Swift는 언어 자체에서 정규식을 지원하지 않고 FoundationNSRegularExpression 클래스를 이용한다.

  1. NSRegulareExpressioninitthrows이기 때문에 try와 같이 사용되어야 한다.
  2. 매치 결과는 TextCheckingResult 클래스의 인스턴스를 얻게 된다. 이는 매치영역 및 영역 내 각 매치 그룹의 범위를 NSRange값으로 가지고 있다.
  3. 문제는 Swift 문자열의 부분문자열은 Index<String.Index>에 의해서 얻을 수 있지, NSRange를 이용할 수 없다. 따라서 이를 컨버팅하는 편의함수나 타입 확장을 이용해야 한다. (사실 이 부분은 Linux 버전의 Swift의 문제이다. Apple Swift에서는 Foundation/Cocoa를 임포트하게 되면  NSString의 API가 그대로 String으로도 노출되기 때문에 그대로 사용이 가능하다.)

NSRegularExpression : 정규식 사용하기 – Swift 더보기