🗒️ Text
filename=LookAtMeNow.txt
- 확장자를 제외하고 파일명 구하기
- 특정 문자열 (구분자) 이후의 character set 구하기
Expression Usage
let input = "filename=LookAtMeNow.txt"
let pattern = "(?<=filename)(.*)(?=.txt)"
guard let regex = try? NSRegularExpression(pattern: pattern) else { return }
let range = NSRange(input.startIndex..., in: input)
let matched = regex.matches(in: input, range: range).map {
String(input[Range($0.range, in: input)!])
}
if let firstMatched = match.first {
}
RegExp Details
/(?<=filename)(.*)(?=.txt)/g
()
: used for grouping as arithmetic does. an expression in parentheses allows you to read an exact matched characters & easy to OR two expression together likes (0-9|a-z).
(?<=)
: Positive lookbehind. operator 이후에 적은 표현을 제외하고 나머지 문자열에서 찾는다. 내 뒤에서 찾는 효과 (모든 browser에서 지원되지는 않는다고 함)
.
: Dot. 개행처리를 제외하고 모든 문자열을 찾는다.
- '*': Quantifier. 0자 이상의 match 결과를 찾는다.
(?=)
: Positive lookahead. operator 이후에 적은 표현을 제외하고 앞의 문자열에서 찾는다. 내 앞에서 찾는 효과