gpt4 book ai didi

ios - NSDataDetector 检测链接中的特殊字符

转载 作者:行者123 更新时间:2023-11-28 08:36:46 24 4
gpt4 key购买 nike

我正在使用 NSDataDetector 扫描文本中的链接,然后返回它们。我已经让它适用于常规字母表,但由于我住在一个对英语字母表进行了一些补充的国家/地区,所以我无法使用 NSDataDetector 检测包含这些字符的链接。

特别是“åäö”不起作用。我的代码如下所示:

 var urlStrings = [String]()

let types: NSTextCheckingType = .Link

do {
let detector = try NSDataDetector(types: types.rawValue)
let matches = detector.matchesInString(self, options: .ReportCompletion, range: NSMakeRange(0, self.characters.count))

for match in matches {

if let url = match.URL?.absoluteString {
urlStrings.append(url)
}
}
return urlStrings
} catch {
return urlStrings
}

最佳答案

您好,我对您的代码做了一些修改,对我来说非常适合

func detectLinks() -> [String]
{
let string = "http://www.gåäögle.com/testMasåäö http://www.google.com/testMasåäö http://www.gp.se/livsstil/konsument/vegetariskt-ä4r-inte-alltid-så5-nyttigt-1.1236926"
var urlStrings = [String]()

let types: NSTextCheckingType = .Link

do {
let detector = try NSDataDetector(types: types.rawValue)
let matches = detector.matchesInString(string, options: .ReportCompletion, range: NSMakeRange(0, string.characters.count))

for match in matches {

if let url = match.URL?.absoluteString {
urlStrings.append(url)
}
}
return urlStrings
} catch {
return urlStrings
}


}

也许您的问题与 self.characters.count 有关,您可以检查哪里出了问题,但对我来说这段代码工作正常,运行这段代码后 urlStrings 包含 3 个字符串。希望对你有帮助

关于ios - NSDataDetector 检测链接中的特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37527375/

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