负面的前瞻

时间:2019-03-01 15:40:59

标签: regex go

我正在尝试编写一个正则表达式,它匹配一个单词(在本示例中为themagicword),但不匹配任何一个单词,它来自perl / python世界,我会以负的超前姿态来做到这一点:^(?!themagicword).*
我如何在golang中实现此目标,因为在golang中似乎无法正常工作。

1 个答案:

答案 0 :(得分:0)

“除一个单词外,任何单词都匹配”等同于“匹配(非单词)”,等同于“不(匹配单词)”。因此,只需匹配要排除的词,然后返回反数即可:

hasmagic, _ := regexp.MatchString("themagicword", "haystack")
matched := !hasmagic