0
은 내가 result
의 길이를 인쇄 할 때, 그래서 NSRegularExpression
NSRegularExpression 캡처 그룹
let string = "QWERTY123 ASDFGH"
let nsString = string as NSString
let regex = try! NSRegularExpression(pattern: "(\\D+)\\d+\\s(\\D+)", options: [])
let result = regex.matchesInString(string, options: [], range: NSMakeRange(0, nsString.length))
print(result.count) // prints length of array
for r in 1..<result[0].numberOfRanges
{
print(nsString.substringWithRange(result[0].rangeAtIndex(r))) // prints captured groups
}
for r in result
{
print(nsString.substringWithRange(r.range))
}
사용하여 캡처 그룹을 얻기에 약간의 문제가 이해가 명확하게, 나는 1
를 얻을. 발견 된 표현의 범위는 result[0]
이어야합니다. 그러나 붙잡힌 그룹은 어떻게 result[0]
에 존재합니까? 내가 뭔가 잘못 생각한거야?
다음은 정규식을 (QWE)t
으로 지정하면 캡처 된 그룹 루프가 충돌합니다. nil
또는 다음 정규식에 캡처 된 그룹이 없다는 것을 나타내는 것을 반환하는 방법은 무엇입니까?
감사합니다.
감사합니다. –