我正在尝试删除javascript字符串中的新行。 http://jsfiddle.net/muT5V/
但是,根据此代码生成的警告框(包含jQuery)仍保留新行。
我的javascript:
var s = $('#aDivWithContent').html();
s = s.replace('\n', '').replace('\s', '');
alert(s);
我的HTML:
<div id="aDivWithContent">
<ul>
<li>foo</li>
<li>bar</li>
<li>baz</li>
</ul>
</div>
为什么?
答案 0 :(得分:4)
尝试:
s = s.replace(/(\r\n|\n|\r|\t|\s)/gm,"");
答案 1 :(得分:2)
您需要带有g选项的RegExp和\ r \ n清理
var r = new RegExp(“\ r”,“g”);
var n = new RegExp(“\ n”,“g”);
str = str.replace(r,'')。replace(n,'');
答案 2 :(得分:0)
原因是,replace()只替换找到的一个。 如果您使用RegEx作为replace()的第一个参数,那么将替换所有找到的结果。
var s = $('#aDivWithContent').html();
s = s.replace(new RegExp("\n", "g"), 'a');
s = s.replace(new RegExp("\s", "g"), 'b');
alert(s);