Javascript 字符串替换某些匹配组,而不是整个匹配
在js中,我想用一些文本替换字符串中的换行符,但仅当\n前面有点和可选的空格时。示例文本: 第一句话来了Javascript 字符串替换某些匹配组,而不是整个匹配,javascript,regex,string,replace,Javascript,Regex,String,Replace,在js中,我想用一些文本替换字符串中的换行符,但仅当\n前面有点和可选的空格时。示例文本: 第一句话来了 分成两行 这将是一个新的句子 最后呢 应该成为 "First sentence comes split in two lines.<br>This would be a new sentence.<br>And the end" “第一句话分成两行。这将是一个新句子。和结尾” 使用regexp: text = text.replace(/\.\s(*\n)/g,
分成两行 这将是一个新的句子 最后呢 应该成为
"First sentence comes split in two lines.<br>This would be a new sentence.<br>And the end"
“第一句话分成两行。
这将是一个新句子。
和结尾”
使用regexp:
text = text.replace(/\.\s(*\n)/g, "<br>");
text=text.replace(/\.\s(*\n)/g,“
”;
替换整个匹配,从而吃掉点,据我所知,RegEx.repace不提供仅替换匹配组的方法
最简单的方法是什么?您可以在一个组中捕获一个文字点,然后是一个新行,后跟0+空格字符 在替换使用组1中,后跟一个中断:
$1
\s*(\.)?\n\s*
const regex=/\s*(\)?\n\s*/gm;
const str=`第一句话来了
分成两行。
这将是一个新的句子。
最后`;
const subst=`$1
`;
const result=str.replace(regex,subst);
控制台日志(结果)代码>