正则表达式以排除单词列表

时间:2015-10-25 10:18:11

标签: regex string

我被要求强制执行一个正则表达式行为,允许用户在以下行为下填写某个字段:

^[a-z A-Z0-9\s]+$

但是,此外,我还列出了不允许用户插入的某些单词。

我使用了以下RegEx:

^((?!WordA|WordB).)[a-z A-Z0-9\s]+$

然而,这会禁用以这些单词开头的任何字符串,而我只需要禁用与单词相等的字符串。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

所有你要做的就是让负面的前瞻确保字符串不会在每个单词之后都不这样:

^(?!(WordA|WordB)$)[a-z A-Z0-9\s]+$

此外,您在此处的部分:[a-z A-Z0-9\s]应该是[a-zA-Z0-9\s](没有空格),因为\s与空格匹配。