求一个javascript正则表达式。用于表单验证。要求该字符串任何位置都不能包含字符c,并且不能为空。请大家帮帮忙。拜谢各位了。我知道不能包含-字符可以写为^[^-]*$ 不能为空可以写成[^ ] 怎么把这两段结合起来呢。或怎么写正确呢。请大家帮帮忙,拜谢。

解决方案 »

  1.   

    sohighthesky 兄你这个表达式输个空格可以过,其它都行。再怎么改一下呢。
      

  2.   

    /^[^c\s]+$/这样又不能包含空格 了一般是先去掉空格 再判断
    val.replace(/^\s+|\s+$/g,'').test(/^[^c]+$/)
      

  3.   

    我是用的一套通用的表单验证程序,正则和html控件id,作为参数传下去执行。能在一条正则里写完吗。如果不是很麻烦的话能再想想办法吗?英雄~
      

  4.   

    var str = "abcde";
    var str2 = "";
    if (/^\s*$|c/.test(str))
    {
    alert("not OK");
    }
    if (/^[^c]*$/.test(str2) && /^[^\s]+$/.test(str2) )
    {
    alert("OK");
    }
      

  5.   

    谢谢fandelei1982 能在一条正则里写完吗。再等等看了。不行就只有用/^[^c]+$/了。
      

  6.   


    var str_1 = "ss  cffs";
    var str_2 = " ";
    var str_3 = "";
    var str_4 = "ddd";function check_Null_C(temp) {
    alert(!/((c)|(^$))/.test(temp.replace(/\s/g,'')));
    }
    check_Null_C(str_1); //false
    check_Null_C(str_2); //false
    check_Null_C(str_3); //false
    check_Null_C(str_4); //true
      

  7.   

    谢谢yexianshow我想把^[^c]*$ 和 [^ ] 结合在一起。再等看。有什么其它方法没。谢谢各位
      

  8.   

    /^\b[^c]+\b$/去掉前后的“\b”,就可以去掉对前后不能有空格的限制了。
      

  9.   

    有bug,如果要前后都允许空格,可以这样/[^c ][^c]+/
      

  10.   

    czl21兄弟谢谢你的 /\b[^c]+$/ 但这条 如果是c后面有一个空格是可以过的。
      

  11.   

    谢谢Inpool 兄,你这条/^[^c\s][^c]*$/前面有空格过不了。再等一会儿看
      

  12.   


    ^[^c]*[^ c]+[^c]*$试试这个。
    解释下,就是以c以外的开头,有0个或以上
    中间必须包含一个或者多个不为空格或者c的字符
    最后以不为c的字符结尾,也可以是有0个或者以上。
      

  13.   


    var  regex = /^(?!\s+$)[^c]+$/            ;
      

  14.   

    wanyeyinfeng 和 wcwtitxu 的都可以谢谢大家了。万分感谢。