验证字符串包含'aaa'但不包含'bbb'

问题描述:

Fast RegExp问题。验证字符串包含'aaa'但不包含'bbb'

我必须检查给定的字符串是否包含aaa但不包含bbb。我只能使用正则表达式(http://www.regular-expressions.info/)。

例子:

  • aaa - 确定
  • bbb - 失败
  • aaabb - 确定
  • aaabbb - 失败
  • aaaTEXT - 确定
  • aaaTEXTbbb - 失败
  • aaTEXTa - 失败
+0

是否可以使用'bbbTEXTaaa'? – Raisch 2012-08-09 07:57:26

+0

@Raisch没有[更多字符发布]。 – 2012-08-09 08:07:21

使用这个表达式(?=.*a{3})(?!.*b{3}).+

(?=.*a{3})包含AAA

(?!.*b{3}).+不包含BBB

.+选择满足条件的

也许这是所有的字符串比较快?

var string = "aaabbb"; 

if (string.indexOf("aaa") !== -1 && string.indexOf("bbb") === -1) { 
    // ... 
} 
+0

我只能使用正则表达式,请仔细阅读。 – 2012-08-09 08:01:44