Javascript RegExp以展开包含<;的XML CDATA多行文本;br>';里面有什么?

Javascript RegExp以展开包含<;的XML CDATA多行文本;br>';里面有什么?,javascript,xml,actionscript-3,actionscript,Javascript,Xml,Actionscript 3,Actionscript,有谁知道一个好的注册经验,可以做到这一点,最好的一次去?它需要删除每行开头/结尾处的空白,删除LFs和CRs并替换为单个空格,但如果行末尾有一个(或),则不应添加空格。我需要在符合JavaScript规范的regexp中使用它。我将使用以下内容: var str = ' foo<br>\nbar\nbaz \n quox\nquox'; // split into lines var lines = str.split('\n'); // iterate over each lin

有谁知道一个好的注册经验,可以做到这一点,最好的一次去?它需要删除每行开头/结尾处的空白,删除LFs和CRs并替换为单个空格,但如果行末尾有一个

(或

),则不应添加空格。我需要在符合JavaScript规范的regexp中使用它。

我将使用以下内容:

var str = '  foo<br>\nbar\nbaz \n quox\nquox';
// split into lines
var lines = str.split('\n');
// iterate over each line
for (var i = lines.length; i--; ) {
  // trim whitespace
  lines[i] = lines[i].replace(/^\s+|\s+$/g, '');
  // add whitespace at the end if string doesn't end with "<br>"
  if (!/<br>$/.test(lines[i])) lines[i] += ' ';
}
// concatenate into a string again
lines.join('');
var str='foo
\nbar\nbaz\n quox\nquox'; //分成几行 变量行=str.split('\n'); //迭代每行 对于(var i=lines.length;i--;){ //修剪空白 行[i]=行[i]。替换(/^\s+|\s+$/g'); //如果字符串未以“
结尾,请在结尾添加空格 如果(!/
$/.test(行[i])行[i]+=''; } //再次连接成字符串 行。连接(“”);
谢谢kangax!那就行了!虽然我认为可能有一个最终的regexp,但这也很好!你会感到惊讶,但正则表达式越大,效率通常就越低:)通常,最好将任务分成更小的块,这样对你自己和正则表达式引擎来说都会更容易。