gpt4 book ai didi

string - 如何从 Swift 中的字符串中删除 "\U0000fffc"?

转载 作者:可可西里 更新时间:2023-10-31 23:58:08 27 4
gpt4 key购买 nike

我已将图像添加到文本字段,并希望再次将其删除。我已经尝试了以下两行无济于事?

string = string.stringByReplacingOccurrencesOfString("\\U0000fffc", withString: "", options: NSStringCompareOptions.LiteralSearch, range: nil)
string = string.stringByReplacingOccurrencesOfString("\U0000fffc", withString: "", options: NSStringCompareOptions.LiteralSearch, range: nil)

非常感谢任何帮助,非常感谢!

最佳答案

Unicode 转义序列在 Swift 中与 Objective-C 中的不同,Unicode 字符 U+FFFC 被转义为 \u{fffc}:

这是你的字符串:

var string = "Hello\n\n\u{fffc}"
println(string.dataUsingEncoding(NSUTF32BigEndianStringEncoding)!)
// <00000048 00000065 0000006c 0000006c 0000006f 0000000a 0000000a 0000fffc>

现在删除所有 U+FFFC 字符:

string = string.stringByReplacingOccurrencesOfString("\u{fffc}", withString: "")
println(string.dataUsingEncoding(NSUTF32BigEndianStringEncoding)!)
// <00000048 00000065 0000006c 0000006c 0000006f 0000000a 0000000a>

注意 options:range: 是可选参数,不是在这种情况下需要。


Swift 3/4 更新:

var string = "Hello\n\n\u{fffc}"
print(string.data(using: .utf32BigEndian)! as NSData)
// <00000048 00000065 0000006c 0000006c 0000006f 0000000a 0000000a 0000fffc>

string = string.replacingOccurrences(of: "\u{fffc}", with: "")
print(string.data(using: .utf32BigEndian)! as NSData)
// <00000048 00000065 0000006c 0000006c 0000006f 0000000a 0000000a>

关于string - 如何从 Swift 中的字符串中删除 "\U0000fffc"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29973684/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com