猿问

Go regexp:匹配三个星号

所以我这样做了:

r, _ := regexp.Compile("* * *")
r2 := r.ReplaceAll(b, []byte("<hr>"))

并得到:

panic: runtime error: invalid memory address or nil pointer dereference

所以我想我必须逃避他们:

r, _ := regexp.Compile("\* \* \*")

但是得到了 unknown escape secuence

我是围棋初学者。我究竟做错了什么?


哆啦的时光机
浏览 223回答 3
3回答

烙印99

尝试转义您的 ' *'(因为 ' *' 是用于在re2 语法中重复的特殊字符)r, err := regexp.Compile(`\* \* \*`)// and yes, always check the error// or at least use regexp.MustCompile() if you want to fail fast注意对字符串文字使用反引号`` 。
随时随地看视频慕课网APP

相关分类

Go
我要回答