我正在寻找一个匹配具有特定模式的单词的正则表达式(见下文),但它不包含三个特定单词之一
模式是
0
并且我不希望包含在整个单词中的单词是' TEST',' SPECIFIC1'和' SPECIFIC2'
到目前为止,我发现正则表达式与这些单词不匹配:
[a-zA-Z0-9_~+-]{1,64}
但我无法找到如何将这两个正则表达式结合起来。
例如:
((?!(TEST|SPECIFIC1|SPECIFIC2)).)*
有人有想法吗?
答案 0 :(得分:2)
如果用^
和$
包围表达式,可以将负前瞻与字符类放在一起来完成此操作。
^((?!(TEST|SPECIFIC1|SPECIFIC2))[a-zA-Z0-9_~+-]){1,64}$
Here's示威游行。请注意,这使用了全局和多行标志,因此出于演示目的,每行可以有一个匹配。
如果没有^
和$
,可以移动模式以避免匹配禁用的字符串。