如何快速提取括号内的数据?

Nee*_*Nee 0 swift swift3

我正在尝试快速提取括号内的一些数字。

例如。

var accname = "(1234) some random texts"
Run Code Online (Sandbox Code Playgroud)

如何从 var s 获取 1234 ?括号中的数字没有固定长度。它可以是 (12) 或 (12345)。

这是我尝试过的

var accname = ""
for i in accname.characters.indices[(accname.startIndex)..<accname.endIndex]{

       while accname[i] != ")"{
                accnumb.append(accname[i])
        }
        }
Run Code Online (Sandbox Code Playgroud)

ank*_*kit 5

那么您可以使用@oisdk建议的以下扩展名:

var demoText = "(1234)  e e e er er e"

extension String {
func slice(from: String, to: String) -> String? {
    
    return (range(of: from)?.upperBound).flatMap { substringFrom in
        (range(of: to, range: substringFrom..<endIndex)?.lowerBound).map { substringTo in
            String(self[substringFrom..<substringTo])
        }
    }
}
}


let sliced  = demoText.slice(from: "(", to: ")")
Run Code Online (Sandbox Code Playgroud)