minaje

Swift Regex 본문

iOS

Swift Regex

minaje 2023. 10. 17. 11:54

Regex?

코드를 짜다보면 항상 어려웠던 부분 중 하나가 정규식을 짜는 것이다.
기존에 정규식을 만드는 여러가지 방법도 있지만
(Ex - range, NSPredicate, NSRegularExpression 등..) 너무 어려운 관계로 다음 글에...
오늘은! iOS 16이후에 나온 Regex에 대해 알아보자!

Regex를 만드는 여러가지 방법

String으로 만들기

let regex = try Regex(#"정규식"#)
//이 패턴을 사용하면 String에 따로 escaping 문자를 작성 안 해도 된다.

/ /로 나타내기

/ / 안에 정규식을 작성하면 컴파일러가 알아서 Regex타입으로 변환해준다.

let regex = /정규식/
// 이 패턴을 WWDC에서는 Regex Literal라고 부른다.

RegexBuilder 사용하기

RegexBuilder를 사용하기 위해서는 우선 Import를 해주어야한다.
그러면 DSL(Domain Specific Language) 방식으로 정규식을 작성할 수 있다.

import RegexBuilder

let regex = Regex {
    "판별하고 싶은 것"
    Repeat(.digit, count: 2)
    "!"
}

심지어 body에 Regex Literal을 넣어도 된다!

import RegexBuilder

let regex = Regex {
	"판별하고 싶은 것"
    "Regex Literal 판별식"
}

참고

https://brunch.co.kr/@eunjin3786/281

'iOS' 카테고리의 다른 글

DI - Dependency Injection  (0) 2023.10.18
Swift의 정규식  (0) 2023.10.17
Keychain? UserDefault 쓰면 안돼?  (0) 2023.05.03