在Swift中检查一个字符串是否包含一个子串(附实例)

1,401 阅读1分钟

本教程通过实例解释了如何在swift中检查字符串中是否存在子串。

例如,如果一个给定的字符串是cloudhadoop,那么substring cloud返回true。

如何在Swift中检查一个字符串是否包含一个子串?

  • 在Swift 4和5版本中使用包含

字符串有一个包含方法,它接收子串,如果找到则返回真,否则返回假。

它不检查区分大小写的子串

import Foundation

let string = "cloudhadoop"
print (string.contains("cloud")) //true
print (string.contains("Cloud")) //false

if string.contains("cloud") {
    print("Substring Found")
}

输出

true
false
Substring Found
  • 在Swift 3和旧版本中使用range

字符串范围函数如果找到则返回非零值,否则返回nil

import Foundation

let str = "cloudhadoop"
print(str.range(of:"cloud") )
print(str.range(of:"Cloud") )// returns nil


if str.range(of:"cloud") != nil {
    print("Substring Found")
}

输出

Optional(Range(Swift.String.Index(_rawBits: 1)..<Swift.String.Index(_rawBits: 327680)))
nil
Substring Found