我试图删除字符串末尾的数字,但我无法做到。我该怎么办?
示例:
swift 23
ios 36
iphone 25
swift
ios
iphone
但我也希望在开头显示数字。
示例:
25 january 2018 my question
11 september 2001
更新
那是我的代码:
func parseHTML(html: String) -> Void {
if let doc = try? HTML(html: html, encoding: .utf8) {
var showString = String()
for show in doc.css("ul[class^='topic'] li a"){
showString = show.text!.trimmingCharacters(in: CharacterSet.decimalDigits) //it's remove whole numbers
goster.append(showString)
}
答案 0 :(得分:1)
<强>更新强>
问题已经改变,所以这个答案可能现在不适合你。
如果总是存在空间或更多空间的快速方法是:
var str = "swift 23"
let newString = str.split(separator: " ").first
答案 1 :(得分:0)
您可以将String.replacingOccurences(of:,with:,options:)
与正则表达式一起使用,仅匹配字符串末尾的数字。
let stringsWithNumbers = ["swift 23", "ios 36", "iphone 25","25 january 2018 my question","11 september 2001"]
let newStrings = stringsWithNumbers.map({$0.replacingOccurrences(of: "\\d+$", with: "", options: .regularExpression)})
print(newStrings)
输出:
[“swift”,“ios”,“iphone”,“2018年1月25日我的问题”,“11 9月“]
如果您还想删除字符串末尾的空格,只需将正则表达式更改为"\\s*\\d+$"
。