Swift字符串中的区分大小写的字符替换
问题描述:
我需要以区分大小写的方式替换Swift字符串中的字符。Swift字符串中的区分大小写的字符替换
我一直在使用replacingOccurrences(of:with:options:range:)
内置的字符串函数将每个“a”改为“/ a /”,每个“b”改为“/ b /”等等,如下所示:
stringConverted = stringConverted.replacingOccurrences(of: "a", with: "https://stackoverflow.com/a/", options: [])
然后我把每个“/ a /”改成它对应的字母,即“a”。我将每个“/ b /”更改为相应的字母,即“q”,依此类推。
我的问题是,我需要这个替换区分大小写。我已经看了这个,但我试过了我发现的东西,但它没有帮助。
我需要使用range
参数吗?还是我在做其他事情?
答
正如@Orkhan提到你可以通过options: .caseInsensitive
像下面
let a = "a"
let start = a.index(a.startIndex, offsetBy: 0)
let end = a.index(a.startIndex, offsetBy: a.characters.count)
let range = start..<end
let value = a.replacingOccurrences(of: "a", with: "/a", options: .caseInsensitive, range: range)
print(value)
+0
谢谢!我在一个操场上试了一下,结果很奏效,结果证明我的项目中有其他东西是错的,但至少我知道我没有做错任何事情 – Sam
更换已经是区分大小写的。你通过'选项:[.caseInsensitive]'进行不区分大小写的搜索。 –