关于js正则表达式的非获取匹配的问题!!!
有一组字符串: str = "AQ;BM; CN;eDP; EX; FX";
我想要的结果是:
------结果-------
AQ
BM
CN
eDP
EX
FX
-----------------
也就是说,我想要把;号前面不是e(或者说不是&#加数字)的所有;替换成<br />
我试用过的方法:
<script type="text/javascript">
function RE()
{
var str = "AQ;BM; CN;eDP; EX; FX";
alert(str.replace(/[^&#\d+;];\s*/gm,'<br />')); //方法一
alert(str.replace(/(?!&#\d+;);\s*/gm,'<br />')); //方法二
}
</script>
注: 方法一可以找到(;)分号前面不是&#数字的并替换,但问题是会把(;)分号前面多替换掉一个字符,所以失败.
方法二是我找js正则帮助文档,按照里面的描述写的,可能是我理解错误,出来的结果同预期也不一样,所以失败.
问: 希望哪位兄弟姐妹可以帮帮我解决这个问题..谢谢!!