在Javascript中,您可以replace a string with a function。有没有办法在Swift中使用NSRegularExpression
?
我想做相同的
"*Hello there*".replace(/(\*).*?(\*)/g, function(match, p1, p2, p3) {
return "<i>" + p2 + "</i>"
})
在Swift中,因为我正在写一个降价解析器。
答案 0 :(得分:0)
你不能但是你可以解决插入标签的问题,然后删除参考字符:
let str = "*Hello there*"
let result = str
.replacingOccurrences(of: "(\\*.*?\\*)", with: "<i>"+"$1"+"</i>", options: .regularExpression)
.replacingOccurrences(of: "\\*(.*?)\\*", with: "$1", options: .regularExpression)
print(result) // "<i>Hello there</i>"