如何从 String Swift 中删除 '\u{ef}' 字符

Jas*_*rne 6 string unicode-string ios swift

假设我有一个字符串

var a = "#bb #cccc #ddddd\u{ef}" 
Run Code Online (Sandbox Code Playgroud)

我将它设置为这样的 textview

let text = a.trimmingCharacters(in: .whitespacesAndNewlines)
let textRemoved = text?.replacingOccurrences(of: "\u{ef}", with: "", options: NSString.CompareOptions.literal, range:nil)
textView.text = textRemove
Run Code Online (Sandbox Code Playgroud)

我正在尝试删除\u{ef}这里的字符。但textRemoved它并没有发生。请帮我怎么做。

我正在使用 Xcode 10。看起来 Xcode 版本低于 10 工作正常。这是 Xcode 10 的错误吗?

小智 5

这是一个迟到的答案,但我也努力替换字符串中的“\u{ef}”。在调试过程中,当鼠标悬停在字符串上时,它显示了 \u{ef} 的存在,但在描述中打印时,它只显示了空格。

let str = "\u{ef} Some Title"
print(str) //" Some Title"
Run Code Online (Sandbox Code Playgroud)

我试过了,replacingOccurrences(of: "\u{ef}", with: "", options: NSString.CompareOptions.literal, range: nil).trimmingCharacters(in: .whitespaces)但它也失败了。

所以我使用了下面的代码片段,它就像奇迹一样工作。

 let modifiedStr = str.replacingOccurrences(of: "\u{fffc}", with: "", options: NSString.CompareOptions.literal, range: nil).trimmingCharacters(in: .whitespaces)
print(modifiedStr)  //"Some Title"
Run Code Online (Sandbox Code Playgroud)

希望这对某人有帮助!!


Jog*_*ary -2

它正在工作,请再次检查:

 let a = "#bb #cccc #ddddd\u{ef}"
 let text = a.trimmingCharacters(in: .whitespacesAndNewlines)
 let textRemoved = text.replacingOccurrences(of: "\u{ef}", with: "", options: NSString.CompareOptions.literal, range:nil)
 print(textRemoved)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述