如何在Swift中正确使用NSRegular Expression和过滤字符串数组

斯宾塞·里德(Spencer Reid)

这是我的问题,我有一个包含一堆国家的字符串数组:

让myCountryStart = [“非洲/ ABC”,“美国/ BBC”,“亚洲/ CBC”,“太平洋/ CBA”,“欧洲/ CBB”,“印度/ CAB”]

是否有任何解决方案来删除“ Africa”,“ America”,“ Asia” ...等特定单词。让输出结果如下所示:

让myCountryEnd = [“ ABC”,“ BBC”,“ CBC”,“ CBA”,“ CBB”,“ CAB”]

这是我现在的代码...

let 1stReplace = myCountryStart.replacingOccurrences(of: "/", with: "", options: .literal)
let 2ndReplace = 1stReplace.replacingOccurrences(of: "Africa", with: "", options: .literal)
let 3rdReplace = 2ndReplace.replacingOccurrences(of: "Asia", with: "", options: .literal)

我知道这是一个愚蠢的解决方案。因此,我更喜欢使用NSRegular Expression但是我遇到了有关字符串和字符串数组的问题。

let target = myCountryStart
let regex = "/"
let RE = try? NSRegularExpression(pattern: "regex", options: .caseInsensitive)
let modified = RE?.stringByReplacingMatches(in: target, options: .reportProgress, range: nil, withTemplate: "") {
    return modified
}
let myCountryEnd = modified

因此,我收到有关无法在String数组上使用此方法的警告。我该怎么做才能解决?

任何建议或帮助将不胜感激。感谢Swift新秀。

维克多·史翠比维

您可以使用.map.replacingOccurrences使用正则表达式,例如.*/^[^/]*/

let myCountryStart = ["Africa/ABC", "America/BBC", "Asia/CBC", "Pacific/CBA", "Europe/CBB", "Indian/CAB"]
let myCountryEnd = myCountryStart.map{ $0.replacingOccurrences(of: ".*/", with: "", options: [.caseInsensitive,.regularExpression]) }
print(myCountryEnd)
// => ["ABC", "BBC", "CBC", "CBA", "CBB", "CAB"]

.*/模式将匹配除换行符以外的任何0个或多个字符,并尽可能地匹配到last /

^[^/]*/模式将匹配/从字符串开头到第一个以外的所有字符/

请注意,您不需要该.caseInsensitive选项,我保留了它来显示如何在options参数中组合多个选项

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在C中正确使用存储的字符串

来自分类Dev

如何在PowerShell中正确打印包含字符串和多个数组的对象?

来自分类Dev

如何在此示例代码(从字符串到数组)中正确使用JSON.parse?

来自分类Dev

如何在python中正确使用'or'和'and'

来自分类Dev

使用 edittext 过滤字符串数组

来自分类Dev

使用select和bool数组过滤字符串数组

来自分类Dev

如何在Swift iOS8中正确获取字符串的宽度?

来自分类Dev

如何在Swift iOS8中正确获取字符串的宽度?

来自分类Dev

如何映射/过滤和匹配数组中的字符串

来自分类常见问题

如何在PowerShell复制脚本中正确过滤多个字符串

来自分类Dev

如何在字符串数组中映射字符串值的过滤器

来自分类Dev

如何在SonataAdminBundle中正确翻译字符串

来自分类Dev

如何在C中正确输入字符串

来自分类Dev

如何在C中正确返回字符串

来自分类Dev

如何在urlopen中正确编码字符串?

来自分类Dev

如何在urlopen中正确编码字符串?

来自分类Dev

如何在C中正确操作字符串

来自分类Dev

如何在JSF中正确显示字符串的输出?

来自分类Dev

如何在C中正确解析字符串

来自分类Dev

如何在字符串替换脚本中正确转义'='?

来自分类Dev

如何在Android中正确提取字符串

来自分类Dev

如何在if测试中正确使用java子字符串?

来自分类Dev

如何在C#中正确使用字符串?

来自分类Dev

如何在Kotlin中正确使用字符串属性?

来自分类Dev

如何在 PHP 中正确地将字符串转换为关联数组

来自分类Dev

Swift字符串过滤器数组

来自分类Dev

如何在日期数组中正确使用JavaScript indexOf

来自分类Dev

如何在gruntfile.js中正确使用数组变量

来自分类Dev

如何在 Java 中正确使用数组列表?

Related 相关文章

热门标签

归档