如何编写正则表达式模式来测试字符串是否包含多个具有以下结构的子字符串:
"cake.xxx"
xxx 是哪里任何但不是“奶酪”或“牛奶”或“黄油”。
例如:
-
"I have a cake.honey and cake.egg"
应该返回true
, but
-
"I have a cake.**milk** and cake.egg"
应该返回false
.
这是你想要的吗?
^(?!.*cake\.(?:milk|butter)).*cake\.\w+.*
See it 在 Regexr 上 http://regexr.com?2usad
如果它包含“cake.XXX”,则它将匹配完整的行,但如果它包含“cake.milk”或“cake.butter”,则不匹配
.*cake\.\w+.*
如果有“蛋糕”,这部分就会匹配。后跟至少一个单词字符。
(?!.*cake\.(?:milk|butter))
这是一个否定的前瞻,如果字符串包含您不允许的单词之一,这将阻止匹配
^
将模式锚定到字符串的开头
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)