不包含多个特定单词的字符串的正则表达式

2024-03-03

我正在尝试组合一个正则表达式来查找特定单词don't存在于字符串中。具体来说,我想知道什么时候“主干”、“标签”或“分支”不存在(这是针对 Subversion 预提交挂钩)。基于正则表达式匹配不包含单词的字符串 https://stackoverflow.com/questions/406230/regular-expression-to-match-string-not-containing-a-word我可以使用否定环视轻松地为一个单词做到这一点:

^((?!trunk).)*$

这是我正在努力解决的“and”运算符,我似乎无法获得包括其他两个单词在内的组合。

这在 .NET 中运行良好,只需一个单词:

var exp = new Regex(@"^((?!trunk).)*$");
exp.IsMatch("trunk/blah/blah");

如果第二行的路径中不存在“trunk”,它将返回 false(当前状态)或 true。

我在这里缺少什么?


使用负数展望 http://www.regular-expressions.info/lookaround.html断言输入中不存在这三个单词中的任何一个:

^(?!.*(trunk|tags|branches)).*$

我还稍微重新排列了您的正则表达式以纠正小错误。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

不包含多个特定单词的字符串的正则表达式 的相关文章

随机推荐