在JavaScript中组合正则表达式

时间:2015-03-09 16:53:05

标签: javascript regex

我的要求是允许某个字段长度为3-50个字符,包含字母数字和“ - ”字符,但不允许使用2个特定字词。

我从/^[\w\-\s]{3,50}$/开始。然后我添加了/^((?!word1).)*$/i/^((?!word2).)*$/i

我知道,一般来说,regexp没有逻辑AND。我可能连续测试3个正则表达式,如果其中任何一个失败,则会失败,但我宁愿只有一个正则表达式。我可以用什么正则表达式来满足所有3个条件?

1 个答案:

答案 0 :(得分:1)

您可以使用负前瞻使用此单一正则表达式:

/^(?!.*?(word1|word2))[\w\s-]{3,50}$/i