使用换行符在行尾的不可见字符

时间:2014-01-03 16:21:13

标签: javascript regex string

我需要你的帮助,

似乎使用正则表达式替换方法添加了额外的字符或空格:

string.replace(/\n/g,'<br>')

有可能摆脱这个吗?或者这只是这种方法的方式吗?

由于

2 个答案:

答案 0 :(得分:4)

这可能是回车符\r

使用:string.replace(/\r?\n/g,'<br>')

答案 1 :(得分:1)

如果您不确定单个\n\r是否可能发生(并且是一个有效的行结束),或者可能与另一个结合,这里有一个腰带和吊带的方法:

  1. 仅用\n\r替换所有\r\n和所有\n个组合。
  2. 将所有剩余的\r替换为\n
  3. 将所有\n替换为<br/>
  4.  string = string.replace(/\r?\n\r?/g, '\n');
     string = string.replace(/\r/g, '\n');
     string = string.replace(/\n/g,'<br/>');
    

    为清楚起见,将其作为单独的说明书写出来。当然,您也可以立即插入\n,而不是先更改为<br/>