2
我已经搜索和搜索,但无法看到找到什么等价于斯威夫特的instr或strpos。只需要看看一个字符串是否包含一个字符串。我如何在Swift中做到这一点?Swift instr或strpos相当于
我已经搜索和搜索,但无法看到找到什么等价于斯威夫特的instr或strpos。只需要看看一个字符串是否包含一个字符串。我如何在Swift中做到这一点?Swift instr或strpos相当于
使用rangOfString()
:
if string.rangeOfString("mySubstring") != nil
{
println("string contains substring")
}
这里是String的斯威夫特一个有用的扩展。这两个函数都像众所周知的PHP函数一样工作。只需粘贴此代码在项目的任何.swift文件:
import Foundation
extension String {
func strpos(needle:String)->Int{
//Returns the index of the first occurrence of a substring in a string, or -1 if absent
if let range = self.rangeOfString(needle) {
return startIndex.distanceTo(range.startIndex)
} else {
return -1
}
}
func instr(needle:String)->Bool{
return self.containsString(needle)
}
}
用法,其他地方在你谟
let myString = "Hello, world"
print(myString.strpos("world")) //->prints "7"
print(myString.strpos("Dolly")) //->prints "-1"
print(myString.strpos(",")) //->prints "5"