这样简单的应用不用正则可能更快一些
var s="k ey 1key";
alert(s.indexOf('key')!=-1);
alert(/key/i.test(s));

解决方案 »

  1.   

    要用正则,使 str1 不能通过 match(), str2 可以
      

  2.   

    用两次呢
    <script>
    var str = 'abcdkeyabcd key abcdefa klksfa';
    alert(str.replace(/\w*key\w*/g,'').split(/\s+/));
    </script>
      

  3.   


    var str = 'abcdkeyabcd key abcdefa klksfa';
    var re=/key/gi;
    alert(re.test(s));难道这个不是正则吗?
      

  4.   

    上边的朋友肯定是拿来做比对
    不过 indexOf应该分大小写的吧
      

  5.   


    若是这样的话,下面的语句已经实现了
    [\s\S]*(?:key)[\s\S]*
    我是希望有类似的语句
    [\s\S]*(?!key)[\s\S]*
      

  6.   

    你的正则match==null就不存在了,还要怎么样处理啊?
    你说的还要另外的语句,那请问另外的正则你怎么用?不match?
      

  7.   

    var str = 'xx key xxx'; 
    var re=     //这里怎么写才能另 re.test(str) 返回 false ?
      

  8.   

    而且
    var str = 'xxxxxxxx'; 
    就能令 re.test(str) 返回 true
      

  9.   


    var str = 'abcdkeyabcd key abcdefa klksfa'; 
    var re=/key/gi; 
    alert(!re.test(str));
      

  10.   

    好不容易想出来,楼主能不能加分啊/^(?!key)(.(?!key))*$/ 或者 /^(.?(?!key))*$/
    原理就是一个一个字符判断,当然效率是相当低
      

  11.   

    /^(?!.*?key)/<script type="text/javascript">
    var str1 = 'xxx key xxx', str2 = 'xxxxxxxxxxx';
    var p = /^(?!.*?key)/;
    alert(
    'str1: ' + p.test(str1) + '\nstr2: ' + p.test(str2)
    );
    </script>
      

  12.   

    alert(!re.test(str));
    这样不就反会FALSE了?
      

  13.   

    亏你们想得到!
    谢谢了!!!
    fosjos
    muxrwc
    等下一定加分
      

  14.   

    不懂!
    找不到的key的情况不就是没有key吗?