var content = '@ || @caocl   /抱拳|| @caocl TEST';
content = content.replace(/\|\|.*/gmi, '');
var reg = /\@[^\s|@]*$/ ;
var str = content.match(reg);
alert(str);
alert(content);
alert('@'.match(reg));将content里||后的内容去掉然后匹配我现在匹配出了content = '@';但是alert(str)确实null,alert(content)是‘@’,alert('@'.match(reg))是‘@’;
这样str应该也是‘@’才对,求大神指教怎么匹配出正确的值,这样的值又为什么不对

解决方案 »

  1.   

    把str转换为string再alert 试试javascript都忘光了……
      

  2.   


    我alert(typeof content),弹出的就是“string”,本身就是string类型的,不用转换吧
    应该不是这个问题
      

  3.   

    var content = '@ || @caocl /抱拳|| @caocl TEST';
    @ 后面不是哟个空格吗
    改成 var reg = /\@[^|@]*$/ ; 这样不就对了