我正在尝试从一长串字符串中获取手机号码,其中包含用逗号分隔的手机号码。
E.g:
8809394847, 9988338847, 9933883384, 8833938373
在我的代码中,我有一个接受手机号码来完成特定工作的功能。我的整个字符串存储在一个名为inputData的变量中。
我尝试使用此代码:
let mob = inputData.index(of: " ") ?? inputData.endIndex
let mobile = inputData[..<mob]
MyJob(phone: mobile). //Function that accepts mobile number
但这没有任何意义。
我的原始代码:
@IBAction func clickButton(_ sender: UIButton) {
inputData = textView.text!
MyJob(phone: mobile). //Calling function
}
我需要在clickButton函数中运行某种循环来获取手机号码并将其逐个发送到MyJob函数。
答案 0 :(得分:1)
你最好尝试组件分离字符串功能
@IBAction func clickButton(_ sender: UIButton) {
inputData = textView.text!
var mobileNumbers = inputData.components(separatedBy: ",")
for mobile in mobileNumbers {
MyJob(phone: mobile) //Calling function
}
}
答案 1 :(得分:1)
使用带参数components(separatedBy
的{{1}}制作数组然后使用循环
", "
答案 2 :(得分:1)
您只需使用let string = "8809394847, 9988338847, 9933883384, 8833938373"
let phoneNumbers = string.components(separatedBy: ", ")
for phoneNumber in phoneNumbers {
MyJob(phone: phoneNumber)
}
将字符串拆分为单独的电话号码即可。
String.components(separatedBy:)
答案 3 :(得分:0)
您可以使用split函数将子字符串数组添加为[subStrings],如
let str = "8809394847,9988338847,9933883384, 8833938373"
let arrayOfNumbers = str.split(separator: ",")
print(arrayOfNumbers)
输出: [“8809394847”,“9988338847”,“9933883384”,“8833938373”]
迭代此数组并将其逐个发送到MyJob函数。
希望这有帮助。