检查字符串是否包含文本字段中的文本
Checking if a string contains a text in a textfield
如何检查 String
(例如 "apple"
)是否包含我在 UITextField
(例如 "p"
或 "pp"
).
如果 String
包含 UITextField
的 text
,我想打印一条消息 - 例如:"apple contains pp"
.
你可以这样实现
class youClass: NSObject {
var yourTextFieldName = UITextField()
func someMethod() {
var apple = "apple"
if apple.containsString(self.yourTextfieldName.text!) {
print("apple contains \(self.yourTextfieldName.text!)")
}
}
}
您可以扩展 String
:
extension String {
@discardableResult
func containsText(of textField: UITextField) -> Bool {
// Precondition
guard let text = textField.text else { return false }
let isContained = self.contains(text)
if isContained { print("\(self) contains \(text)") }
return isContained
}
}
它不仅打印结果,还 return 一个 Bool
指示 textField
的 text
是否包含在 String
.如果您愿意,@discardableResult
属性允许您忽略 return 值,而不会生成编译器警告。
您也可以采取相反的方法,通过扩展 UITextField
:
extension UITextField {
@discardableResult
func textIsContained(in target: String) -> Bool {
// Precondition
guard let text = self.text else { return false }
let isContained = target.contains(text)
if isContained { print("\(target) contains \(text)") }
return isContained
}
}
您将按如下方式使用这些方法:
// Your `UITextField`
let textField = UITextField()
textField.text = "pp"
// String extension:
"apple".containsText(of: textField) // returns `true` and prints "apple contains pp"
// UITextField extension:
textField.textIsContained(in: "apple") // returns `true` and prints "apple contains pp"
如何检查 String
(例如 "apple"
)是否包含我在 UITextField
(例如 "p"
或 "pp"
).
如果 String
包含 UITextField
的 text
,我想打印一条消息 - 例如:"apple contains pp"
.
你可以这样实现
class youClass: NSObject {
var yourTextFieldName = UITextField()
func someMethod() {
var apple = "apple"
if apple.containsString(self.yourTextfieldName.text!) {
print("apple contains \(self.yourTextfieldName.text!)")
}
}
}
您可以扩展 String
:
extension String {
@discardableResult
func containsText(of textField: UITextField) -> Bool {
// Precondition
guard let text = textField.text else { return false }
let isContained = self.contains(text)
if isContained { print("\(self) contains \(text)") }
return isContained
}
}
它不仅打印结果,还 return 一个 Bool
指示 textField
的 text
是否包含在 String
.如果您愿意,@discardableResult
属性允许您忽略 return 值,而不会生成编译器警告。
您也可以采取相反的方法,通过扩展 UITextField
:
extension UITextField {
@discardableResult
func textIsContained(in target: String) -> Bool {
// Precondition
guard let text = self.text else { return false }
let isContained = target.contains(text)
if isContained { print("\(target) contains \(text)") }
return isContained
}
}
您将按如下方式使用这些方法:
// Your `UITextField`
let textField = UITextField()
textField.text = "pp"
// String extension:
"apple".containsText(of: textField) // returns `true` and prints "apple contains pp"
// UITextField extension:
textField.textIsContained(in: "apple") // returns `true` and prints "apple contains pp"