在js中 去除字符串头尾空格的正则表达式可以这样写var reExtraSpace = /^\s*(.*?)\s+$/;我弱弱的认为这个表达式分三部分看
\s* 零到多个空格(.*?) 正则表达式的懒惰性,匹配零到多个任意字符\s+ 一到多个空格(这里为什么用+不用*?)$ (这个是个什么啊?)整个表达式合起来看不太懂了,请高手解答,谢谢!

解决方案 »

  1.   

    去除字符串头尾空格 /^\s*(.*?)\s+$/  你确定是这样写?这段正则的意思是:有一个字符串,开头可能有空格(也可能没有),最后面至少有一个空格,中间可能有任意个(可以一个都没有)非回车换行的字符。var s = ' ';
    var s2 = 'a ';
    var s3 = ' a ';
      

  2.   

    这个估计是这样写的
    var s=" sdj ";
    var reExtraSpace = /^\s*(.*?)\s+$/;
    s.replace(reExtraSpace,"$1")