2017-07-29 144 views
0

我需要以区分大小写的方式替换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参数吗?还是我在做其他事情?

+2

更换已经是区分大小写的。你通过'选项:[.caseInsensitive]'进行不区分大小写的搜索。 –

回答

1

正如@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

相关问题