Golang多线正则表达式无法正常工作

Golang多线正则表达式无法正常工作,第1张

概述为什么以下多行正则表达式不起作用,我希望匹配标记内的子字符串.其他简单的多线匹配正常工作. func main() { r := regexp.MustCompile(`(?m)<think>(.*)</think>`) const s = `That is <think> FOOBAR </think>` fmt.Printf("%#v\n", 为什么以下多行正则表达式不起作用,我希望匹配标记内的子字符串.其他简单的多线匹配正常工作.
func main() {    r := regexp.MustCompile(`(?m)<think>(.*)</think>`)    const s = `That is     <think>    FOObar    </think>`    fmt.Printf("%#v\n",r.FindStringSubmatch(s))}

https://play.golang.org/p/8C6u_0ca8w

默认情况下,”.”与换行符不符.如果你给出“s”标志,那就是.我认为你不需要“m”.

请注意,如果有多个< think> …< / think>在你的字符串中,正则表达式将匹配第一个< think>之间的所有内容.和最后一个< / think>.使用.*?会使它只匹配第一个的内容.

总结

以上是内存溢出为你收集整理的Golang多线正则表达式无法正常工作全部内容,希望文章能够帮你解决Golang多线正则表达式无法正常工作所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1293787.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-10
下一篇 2022-06-10

发表评论

登录后才能评论

评论列表(0条)

保存