加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

arrays – 在Array中搜索字符串,不区分大小写

发布时间:2020-12-14 04:49:15 所属栏目:百科 来源:网络整理
导读:我有应用程序存储服务器的字符串值.然后我使用SearchView写入可以在List中的字符串.它必须不区分大小写.到目前为止,我有这个.但这不是我想要的魔力. if (myListTags as NSArray).containsObject(searchBar.text!) { print("FOUND") getCategoryPick()} 我尝
我有应用程序存储服务器的字符串值.然后我使用SearchView写入可以在List中的字符串.它必须不区分大小写.到目前为止,我有这个.但这不是我想要的魔力.

if (myListTags as NSArray).containsObject(searchBar.text!) {
            print("FOUND")
            getCategoryPick()
}

我尝试用caseInsensitiveCompare加入它,但我失败了.对我有什么帮助?
如果该代码能够理解捷克语中的字母相似性,那将是完美的.(?= c,?= z,í= i ……)

解决方法

“?”是Unicode字符“LATIN SMALL LETTER C WITH CARON”.
它可以分解为“c”“”,后者(“CARON”)是所谓的“变音标记”.

在比较字符串时忽略变音符号(这样
“?”=“c”),使用.DiacriticInsensitiveSearch选项:

let list = ["?","?"]
let search = "C"

if (list.contains {
    $0.compare(search,options: [.DiacriticInsensitiveSearch,.CaseInsensitiveSearch]) == .OrderedSame
    }) {
        print("Found")
}

或者,如果要查找匹配的子字符串:

if (list.contains {
    $0.rangeOfString(search,.CaseInsensitiveSearch]) != nil
    }) {
        print("Found")
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读