iOSにおけるcontainsStringとrangeOfStringの違い
iOSでは、containsStringとrangeOfStringはどっちも文字列の中に部分文字列があるかどうかを判断するためのメソッドですが、ちょっと違いがあります。
- 文字列を含む
- NSString
let str = "Hello, World!"
if str.containsString("Hello") {
print("包含")
} else {
print("不包含")
}
含む
- rangeOfString
- ネイティブ言語の文字列
- NSRange
- ネイティブなNSRange
- 場所
- 見つかりません
let str = "Hello, World!"
let range = str.rangeOfString("Hello")
if range.location != NSNotFound {
print("找到了,位置为:\(range.location),长度为:\(range.length)")
} else {
print("未找到")
}
見つかりました。位置:0、長さ:5
要するに
- containsStringは、指定されたサブ文字列が含まれるかどうかを判定し、Boolean値を返します。
- rangeOfStringは、サブストリングが文字列内のどこにあるかを見つけ出し、NSRangeオブジェクトを返します。