Swift 程序检查字符串是否以指定子字符串开头
Swift 提供了一个 hasPrefix() 函数来检查字符串是否以指定子字符串开头。hasPrefix() 函数返回一个布尔值,指示指定的子字符串是否与输入字符串的起始字符匹配。 hasPrefix() 函数区分大小写,这意味着根据该函数,"a"和"A"是两个不同的值。
输入
String = "Ram got first place" SubString = "Ram"
输出
Yes
此处,子字符串的字符与输入字符串的起始字符匹配。
语法
func hasPrefix(value)
此处,值表示一个字符串。如果值与输入字符串的起始字符匹配,则此函数返回 true。否则,返回 false。如果值为空字符串,它也返回 false。
算法
步骤 1 - 创建一个字符串。
步骤 2 - 创建一个子字符串。
步骤 3 - 使用 hasPrefix() 函数判断给定字符串是否以指定的子字符串开头。
步骤 4 - 打印输出。
示例 1
在下面的 Swift 程序中,我们将检查字符串是否以给定的子字符串开头。因此,创建一个字符串和两个子字符串。然后使用 hasPrefix() 函数检查指定的字符串是否以子字符串开头。如果字符串以子字符串开头,则打印"true"。否则,打印"false"。
import Foundation
import Glibc
let myStr = "Ram likes to teach Swift programming language"
let prefixStr1 = "Ram"
let prefixStr2 = "Suman"
// 检查字符串是否以
// 指定的子字符串开头
var res1 = myStr.hasPrefix(prefixStr1)
var res2 = myStr.hasPrefix(prefixStr2)
print("Is '\(myStr)' starts with '\(prefixStr1)' substring?:", res1)
print("Is '\(myStr)' starts with '\(prefixStr2)' substring?:", res2)
输出
Is 'Ram likes to teach Swift programming language' starts with 'Ram' substring?: true Is 'Ram likes to teach Swift programming language' starts with 'Suman' substring?: falsee
示例 2
在下面的 Swift 程序中,我们将检查字符串是否以给定的子字符串。因此,创建一个字符串和一个子字符串。然后使用 hasPrefix() 函数判断指定的字符串是否以子字符串开头。如果输入字符串以子字符串开头,则输出"YES! The given string starts with the specified substring."。否则,输出"NO! The given string does not start with the specified substring."
import Foundation
import Glibc
let myStr = "Learn Swift programming"
let prefixStr = "Learn"
// 判断字符串是否以
// 指定的前缀子字符串开头
if myStr.hasPrefix(prefixStr) {
print("是!给定的字符串以指定的子字符串开头。")
} else {
print("否!给定的字符串不以指定的子字符串开头。")
}
输出
是!给定的字符串以指定的子字符串开头。
结论
以上就是如何使用 hasPrefix() 函数检查字符串是否以指定的子字符串开头。此方法将子字符串的每个字符与输入字符串的起始字符进行比较。如果任何字符与给定的字符串不匹配,则返回 false。