gpt4 book ai didi

ios - 如何在 Swift 中使用下面的 rangeOfString

转载 作者:行者123 更新时间:2023-11-29 02:10:34 25 4
gpt4 key购买 nike

假设我有一个字符串“10.9.1.1”,我想获取子字符串“10.9”。我怎样才能做到这一点?到目前为止,我有以下内容:

var str = "10.9.1.1"
let range = str.rangeOfString(".",options: .RegularExpressionSearch)!
let rangeOfDecimal = Range(start:str.startIndex,end:range.endIndex)
var subStr = str.subStringWithRange(rangeOfDecimal)

但这只会返回 10。

最佳答案

实际上您的代码只返回“1”,因为“.”在定期表达式模式匹配任何字符。

正确的模式是

\d+    one ore more digits
\. a literal dot
\d+ one or more digits

在 Swift 字符串中,您必须将反斜杠转义为 "\\":

let str = "10.9.1.1"
if let range = str.rangeOfString("\\d+\\.\\d+",options: .RegularExpressionSearch) {
let subStr = str.substringWithRange(range)
println(subStr) // "10.9"
}

关于ios - 如何在 Swift 中使用下面的 rangeOfString,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29326974/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com