我正在尝试查找以下正则表达式%%comp.[^%]+%%
的所有出现,并将其替换为%comp.[^%]+%
(即从两端减少1%(。
除了使用findallindex匹配和按相反顺序清理字符串之外,在go中最简单的方法是什么?
您可以使用Regexp.ReplaceAll方法。示例:
re := regexp.MustCompile(`%(%comp.([^%]+)%)%`)
fmt.Printf("%sn", re.ReplaceAll([]byte("test%%comp.test%%"), []byte("$1")))
>>> OUTPUT: test%comp.test%
注意,$n
在替换字符串中用于扩展regexp中第n组的值。