kan*_*n19 3 regex perl cpu-word match
我的问题是,如果一个字符串包含除了我列出的单词之外的任何单词,我需要匹配.
例如,我可能有这个批准的列表:
User1
User2
Run Code Online (Sandbox Code Playgroud)
以下是两个应该匹配和不应该匹配的示例.
应该匹配(因为User3未获批准):
User1
User2
User3
Run Code Online (Sandbox Code Playgroud)
不匹配(因为列出的每个字符串都在批准的列表中):
User1
Run Code Online (Sandbox Code Playgroud)
我已经尝试了外观断言,但是他们实际上并没有在尝试匹配时使用字母,因此对于像"User1\r\nUser2"我这样的字符串,我会得到类似的匹配"ser1\r\n".除了我认为允许之外,我想知道是否还有其他任何词语.
我不能用编程语言来做这件事; 我只被允许将正则表达式交给程序.语言将是Perl.
请问/\b((?!(User1\b|User2\b)).+?)\b/你在找什么?
\b 表示单词中断,即单词和非单词字符(零宽度)之间的间隙.
?! 表示负前瞻断言(也是零宽度).
.+? 用于捕捉与排除的单词不匹配的任何内容.
希望这可以帮助.