gpt4 book ai didi

swift - CharacterSet和CharacterSet.inverted打印出来的结果是一样的

转载 作者:行者123 更新时间:2023-12-03 16:15:33 27 4
gpt4 key购买 nike

我只是想知道 Swift 中的(反向)字符集是如何工作的。

假设我有以下两个字符集:

let invertedNumbers = CharacterSet(charactersIn: "0123456789").inverted
let numbers = CharacterSet(charactersIn: "0123456789")

当我使用打印功能记录两个字符集时,例如

print(numbers) 

它在控制台中显示的内容与

print(invertedNumbers)

那就是

<CFCharacterSet Items(U+0030 U+0031 U+0032 U+0033 U+0034 U+0035 U+0036 U+0037 U+0038 U+0039)>

但是它们怎么可能是一样的呢?我很困惑,因为它们并不是真的。当我询问倒置的是否包含“a”时,它说true。另一方面,非倒置的表示。我喜欢它的工作方式,但是倒置日志记录不是有问题吗?

最佳答案

倒排字符集在 Swift 中确实可以工作,尽管你无法真正打印它。

例如,如果我想对一组字符进行百分比编码,这样我就可以在 POST 中发送它:

let myPassword = "Hi+You?"
var charset1 = CharacterSet(charactersIn: "#%;<>?[\\]^'\"{|}&+")
let urlwithPercentEscapes = myPassword.addingPercentEncoding( withAllowedCharacters: charset1.inverted)
print(urlwithPercentEscapes)

当我打印 urlwithPercentEscapes 时,我将对该字符组中的任何字符进行百分比编码,因为我显示“withAllowedCharacters: charset1.inverted”。如果我使用“withAllowedCharacters: charset1”,它将对不在该列表中的每个字符进行百分比编码。

关于swift - CharacterSet和CharacterSet.inverted打印出来的结果是一样的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55562202/

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