我正在尝试获取文本的范围,我这样做了:
let telRange = Range(start: tfTelephone.text!.startIndex, end: tfTelephone.text!.endIndex.advancedBy(2))
在此之后我尝试比较:
if (telRange == "08")
但是我收到一个错误:
Binary operator '==' cannot be applied to operands of type 'Range' (aka 'Range') and 'String'
最佳答案
首先,不要强制解包,而是使用 if-let
。其次,您无法比较 Range
和 String
,您很可能想比较该范围的子字符串。第三,您无法从 endIndex
向前推进。
let telRange: String
if let text = tfTelephone.text {
telRange = text[text.startIndex...text.endIndex.advancedBy(-2)]
} else {
telRange = ""
}
类似上面的东西应该可以工作,您可以调整索引和 advanceBy
参数以满足您的期望。
关于ios - 将文本的一部分与字符串进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34606836/