我有描述比赛的字符串,即“人A对人B对人C”。我想自动提取单个参与者,并将其作为字符串数组(即[人A,人B,人C])返回。
我可以通过在字符串中搜索“ vs.”并返回匹配数+ 1来获得参与者的数量。这是我稍后需要与我的defineIndividualParticipants函数结合使用的其他方法。我不知道从这里去哪里,而且我对正则表达式还很陌生(对不起,请放心)。有没有一种方法可以根据字符串中“ vs.”的位置来拆分文本? 您可以假设“与”。顺便说一句,总会有一个句点。
static func calcNumOfParticipants(competitionText: String) -> Int {
let vsString = "vs. "
let range = NSRange(location: 0, length: competitionText.utf16.count)
let regex = try! NSRegularExpression(pattern: vsString, options: NSRegularExpression.Options.caseInsensitive)
let numberOfMatches = regex.numberOfMatches(in: competitionText, options: [], range: range)
return (numberOfMatches + 1)
}
static func determineIndividualParticipants(competitionText: String) -> [String] {
var participantArray: [String]
// ?
return participantArray
}