求一正则表达式过滤掉空白字符但是保留单独的右斜杠。 我用正则表达式/(^\s*)/g匹配任何空白字符 但是又想不替换掉单一的右斜杠“\”。请问该正则表达式该怎样完善?既要替换掉空白字符 但是单独的右斜杠要保留 比如:B J\CD 不要把那个右斜杠替换掉了 要变为:BJ\CD望各位大虾赐教。谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个貌似不是正则表达式的问题……例子如下: <SCRIPT LANGUAGE="JavaScript"> <!-- var str1 = "B J\CD"; var str2 = "B J\\CD"; //必须写成双斜杠才认 alert(str1 +"\n"+ str2); var reg = /\s/g document.write(str1.replace(reg,'')+"<br>") document.write(str2.replace(reg,'')) //--> </SCRIPT> alert('B J\CD'.replace(/\s*/g, '').replace(/\C/g, '\\C'))哈哈,开个玩笑。JS脚本中的反斜杠本身已内置为转义符,因此不能直接在脚本中键入一个单独的反斜杠。例如:“\C”、“\s”、“\d”、“"abcd"\”有义,而“\”无义。如果字串源可控,你原本就应该写成“B J\\CD”或者escape()成“B%20J%5CCD”;如果不可控,AJAX读取并不会存在你说的那问题。 不知道LZ是否明白。JS中的反斜杠是转义,在/\s/g中是对s转义,而/\\/g中两斜杠作用都是转义,究竟对谁转义呢?AJAX读取不影响,否则,该网页上根本就无法显示出斜杠“\”来。同样地alert()也不会发生该问题。<script src="http://code.jquery.com/jquery-1.4.2.js"></script><script>var path="http://topic.csdn.net/u/20100329/17/6840c40f-9efc-4eed-9980-b875eec8a6eb.html?seed=967354520&r=64280870#r_64280870";$.get(path, function(o){ var str=o.match(/(<div[^>]+msgfont[^div]+?\/div>)/g).join(""); alert(str.replace(/<[^>]+>/g,""))})</script> alert("B J\CD");//"B JCD"alert("B J\\CD");//"B J\CD" JSON 敏感汉字 简单js问题(打开网页提示设为首页功能) 如何获取url object标签与div悬浮的问题,在线!!! 看这个验证谁能解决???!!!解决都有分!!! 在xloadtree里加checkbox 多个图层的显示隐藏问题 紧急求助!!!打印调用WebBrowser.ExecWB()时怎么样才能不显示页眉和页脚 ASP中 Javascript的不算大的小问题? 我曾看到一个网站用JS把YEAH。NET二级域名的弹出窗口给干失效了,哪位大侠研究过这个东西怎么弄? js能否控制<v:RoundRect>?? 求助,大家帮忙啊
例子如下: <SCRIPT LANGUAGE="JavaScript">
<!--
var str1 = "B J\CD";
var str2 = "B J\\CD"; //必须写成双斜杠才认
alert(str1 +"\n"+ str2);
var reg = /\s/g
document.write(str1.replace(reg,'')+"<br>")
document.write(str2.replace(reg,''))
//-->
</SCRIPT>
哈哈,开个玩笑。JS脚本中的反斜杠本身已内置为转义符,因此不能直接在脚本中键入一个单独的反斜杠。例如:“\C”、“\s”、“\d”、“"abcd"\”有义,而“\”无义。如果字串源可控,你原本就应该写成“B J\\CD”或者escape()成“B%20J%5CCD”;如果不可控,AJAX读取并不会存在你说的那问题。
AJAX读取不影响,否则,该网页上根本就无法显示出斜杠“\”来。同样地alert()也不会发生该问题。<script src="http://code.jquery.com/jquery-1.4.2.js"></script>
<script>
var path="http://topic.csdn.net/u/20100329/17/6840c40f-9efc-4eed-9980-b875eec8a6eb.html?seed=967354520&r=64280870#r_64280870";
$.get(path, function(o){
var str=o.match(/(<div[^>]+msgfont[^div]+?\/div>)/g).join("");
alert(str.replace(/<[^>]+>/g,""))
})
</script>
alert("B J\\CD");//"B J\CD"