indexOf()方法中是要放位置号的,lz怎么放"#"?
应该else if (params[0].indexOf(0)=="#") 吧?

解决方案 »

  1.   

    楼上的,indexof是找出相应字符在字符串中的位置,而且这样写我是测试通过的。
      

  2.   

    params[0] == /(^\s*)|(\s*$)/   这是什么意思?
      

  3.   

    var params = [];
    //var reg = new RegExp('\\s+','img')
    var reg = /[(^\s+)|(\s+&)]/ig;
    params[0] = '   ';
    if ( params[0].match(reg) ) 

    //continue;

    else if (params[0].indexOf("#")==0) 

    //crt.Dialog.MessageBox(params[0], "test", 48| 0); 
    params[0] = ""; }
      

  4.   

    上面的 /[(^\s+)|(\s+&)]/ig;  中括号去掉哈。
      

  5.   

    params的问题,运行到这里的时候,params不是数组,或者params[0]为null或者undefined
      

  6.   


    if (/^\s*$/.test(params[0])) {
    continue;
    } else if (/^\s*\#/.test(params[0])) {
    params[0] = "";
    continue;
    }
      

  7.   

    你既然用正则,你怎么这么用啊?/(^#)|(\s*$)/.test(params[0])
    这么用不好?两句合并一句不就好了?
    直接
    if(/(^#)|(\s*$)/.test(params[0]))
    {
    continue;
    }
      

  8.   

    谢谢楼上各位的回复,我已经自行解决了,通过定义正则对象来做两个判断搞定,但是让我很不理解的是,为什么把两个写到一个判断里面就不行……郁闷…… re = /^\s*$/;
    if (re.test(params[0]))
    {
    continue;
    }
    //遇到空行
    re = /^#/;
    if (re.test(params[0]))
    {
    continue;
    }