我希望用户在文本字段中输入文本,如果用户键入“<”,则空格应自动附加到字段中的文本
我尝试删除特殊字符,但我也需要用户输入。
let RISTRICTED_CHARACTERS = "<"
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
let set = CharacterSet(charactersIn: RISTRICTED_CHARACTERS)
let inverted = set.inverted
let filtered = string.components(separatedBy: inverted).joined(separator: "")
if filtered == string && string != "" {
return false
} else {
let maxLength = maxLenghtOfTextField
let currentString: NSString = textField.text! as NSString
let newString: NSString = currentString.replacingCharacters(in: range, with: string) as NSString
return newString.length <= maxLength
}
在这段代码中,我不允许“<”这个字符。我希望文本字段是这样的。
我的输出应该是: hello <(space) world
。如果我开始时应该自动附加空格
而不是.replacingCharacters可能会尝试.replacingOccurences
let updatedString: String? = textField.text.replacingOccurrences(of: "<", with: " ")