Swift 中是否有诸如 startsWith() 方法之类的东西或类似的东西?
我基本上是在尝试检查某个字符串是否以另一个字符串开头。我也希望它不区分大小写。
正如您可能会说的那样,我只是想做一个简单的搜索功能,但我似乎在这方面失败了。
这就是我想要的:
输入“sa”应该给我“San Antonio”、“Santa Fe”等的结果。输入“SA”或“Sa”甚至“sA”也应该返回“San Antonio”或“Santa Fe”。
我正在使用
self.rangeOfString(find, options: NSStringCompareOptions.CaseInsensitiveSearch) != nil
在 iOS9 之前,它工作得很好。但是,升级到 iOS9 后,它停止工作,现在搜索区分大小写。
var city = "San Antonio" var searchString = "san " if(city.rangeOfString(searchString, options: NSStringCompareOptions.CaseInsensitiveSearch) != nil){ print("San Antonio starts with san "); } var myString = "Just a string with san within it" if(myString.rangeOfString(searchString, options: NSStringCompareOptions.CaseInsensitiveSearch) != nil){ print("I don't want this string to print bc myString does not start with san "); }
使用 hasPrefix 而不是 startsWith.
hasPrefix
startsWith
例子:
"hello dolly".hasPrefix("hello") // This will return true "hello dolly".hasPrefix("abc") // This will return false