我正在使用string.Replace替换子字符串A
func removeIP(text string) string {
text = strings.Replace(text, "someWord", "**NewWord**", -1)
return text
}
func removeIPUsingRegex(text string) string {
var re = regexp.MustCompile(`\b` + "someWord" + `\b`) // I want to replace whole word only
text = re.ReplaceAllString(text, "**NewWord**")
}
我在这里面临的问题是,只有在字符串替换不支持的情况下,我才想替换整个单词。
因为我必须替换非常非常大的字符串,所以可能以 GB 为单位。与字符串替换相比,正则表达式非常慢。
eg: text: "abcdef defgh /def/ .def/ =def= def xxxy"-> Replace defwith DEF
output: "abcdef defgh /DEF/ .DEF/ =DEF= DEF xxxy"//注意只有整个单词被替换了。
正则表达式将时间缩短了近 100 倍(https://medium.com/codezillas/golang-replace-vs-regexp-de4e48482f53)。任何想法将不胜感激。
鸿蒙传说
相关分类