gpt4 book ai didi

ios - 如何在 NSURL 字符串中包含大括号?

转载 作者:可可西里 更新时间:2023-11-01 02:20:22 25 4
gpt4 key购买 nike

我有以下代码,但 NSURL 不喜欢大括号。它崩溃了。如果我在“格式:”之后的字符串之前放置一个@符号,它什么都不做。如果我尝试使用\来转义大括号,它是行不通的。我该如何进行这项工作?

func getUrlWithUpdateText(updateText: String!) -> NSURL {
let escapedUpdateText = updateText.stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)!
let urlString = String(format: "http://localhost:3000/api/Tests/update?where={ \"name\": %@ }", escapedUpdateText)
let url = NSURL(string: urlString)
return url!
}

我意识到还有另一个类似的线程,但它并没有转化为这种情况,一方面这是 Swift,而不是 Objective-C。

最佳答案

一旦构建完成就转义:

func getUrlWithUpdateText(updateText: String) -> NSURL? {
let toEscape = "http://localhost:3000/api/Tests/update?where={ \"name\": \(updateText) }"
if let escapedUpdateText = toEscape.stringByAddingPercentEncodingWithAllowedCharacters(
NSCharacterSet.URLHostAllowedCharacterSet()),
url = NSURL(string: escapedUpdateText) {
return url
}
return nil
}

用法:

if let res = getUrlWithUpdateText("some text #%$") {
print(res)
} else {
// oops, something went wrong with the URL
}

关于ios - 如何在 NSURL 字符串中包含大括号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31083786/

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