如何在javascript中用空格替换换行符/换行符?
我有一个var,其中包含一个大的单词列表(百万),格式如下:如何在javascript中用空格替换换行符/换行符?,javascript,regex,Javascript,Regex,我有一个var,其中包含一个大的单词列表(百万),格式如下: var words = " car house home computer go went "; 我想做一个函数,用空格替换每个单词之间的换行符 所以结果是这样的: car house home computer go went 一些简单的解决方案如下 words.replace(/(\n)/g," "); 您可以使用.replace()功能: words = words.replace(/\n/g, " "); 请注意,
var words = "
car
house
home
computer
go
went
";
我想做一个函数,用空格替换每个单词之间的换行符
所以结果是这样的:
car house home computer go went
一些简单的解决方案如下
words.replace(/(\n)/g," ");
您可以使用
.replace()
功能:
words = words.replace(/\n/g, " ");
请注意,您需要正则表达式上的g
标志来获取replace,以将所有新行替换为空格,而不仅仅是第一行
工作演示:代码:(已修复)
如果存在多个换行符(换行符),并且可以同时存在\r
或\n
,并且需要用一个空格替换所有后续换行符,请使用
看
要匹配所有Unicode换行符并替换/删除它们,请在上述正则表达式中添加\x0B\x0C\u0085\u2028\u2029
:
/[\r\n\x0B\x0C\u0085\u2028\u2029]+/g
/[\r\n\x0B\x0C\u0085\u2028\u2029]+/g
表示:
-与其中定义的任何单个字符匹配的正字符类的开始:[
-(\r
)-\x0D
-回车(CR)\n]
-(\n
)-换行字符(LF)\x0A
-行列表(LT)\x0B
-表单提要(FF)\x0C
-下一行(NEL)\u0085
-行分隔符(LS)\u2028
-段落分隔符(PS)\u2029
-字符类结束]
-一个量词,使正则表达式引擎与前一个原子(此处的字符类)匹配一次或多次(匹配连续换行符)+
-查找并替换所提供字符串中的所有匹配项/g
var words=“汽车\r\n\r\nhouse\nhome\r计算机\ngo\n\nwent”;
document.body.innerHTML=“旧:\n”+单词+”;
var new_words=words.replace(/[\r\n\x0B\x0C\u0085\u2028\u2029]+/g,“”;
document.body.innerHTML+=“新:\n”+新单词+”你真的试过这个吗?这似乎对我不起作用:@jfriend00@Madmartigan-TRUE。有时,显而易见的事情被忽略了。。。(如果没有/g
标志,则只替换第一次出现的内容)您是否确实尝试了此操作?这似乎对我不起作用:为什么在/(\n)/
中使用paren?它们是不需要的。它们确实是多余的,但我更愿意把它们说清楚——为什么否决票?没有提供解释的下层选民不能帮助我们改进答案(从而使整个社区受益)。
var new_words = words.replace(/[\r\n]+/g," ");
/[\r\n\x0B\x0C\u0085\u2028\u2029]+/g