Javascript 正则表达式替换第一个元素

Javascript 正则表达式替换第一个元素,javascript,regex,replace,Javascript,Regex,Replace,我需要将HTML字符串的内容从一个替换为两个。但我无法做到的是,当一个标签紧跟着另一个标签时: () 将匹配此文本中的所有标记: var text = 'text<BR><BR>text text<BR>text;' var text='texttexttext;' 将匹配和替换我将有 text = text.replace.replace(/(<br\s*\/?>)>/gi, "<BR\/><BR\/>") c

我需要将HTML字符串的内容从一个

替换为两个。但我无法做到的是,当一个标签紧跟着另一个标签时:

()

将匹配此文本中的所有标记:

var text = 'text<BR><BR>text text<BR>text;'
var text='text

text
text;'
将匹配和替换我将有

text = text.replace.replace(/(<br\s*\/?>)>/gi, "<BR\/><BR\/>")

console.log(text); //text<BR/><BR/><BR/><BR/>text text<BR/><BR/>text;"
text=text.replace.replace(/()>/gi,”)
console.log(文本)//文本




文本

;"
有没有办法只使用正则表达式增加一个标记?并实现这一点:

console.log(text); //text<BR/><BR/><BR/>text text<BR/><BR/>text;"

console.log(text);//text



text


text
或者我只会通过一个循环来实现这一点

您可以使用

var text='text

text
text;' text=text.replace(/()+/gi,“$&$1”);
console.log(文本);//=>文本


文本

文本如果存在任何连续的标记,则可以使用负前瞻
()(?!)/
仅增加最后一个标记:

var text='text

text
text;' text=text.replace(/()(?!)/gi,“”)
console.log(文本)是否要在替换中硬编码

?您不想只添加序列中最后使用的
br
?我刚刚尝试并获得了
文本


文本

文本您想要输出什么?文本



text



text@WiktorStribiżew我不需要硬编码
,如果我只能增加一个BR标记,那么它也应该工作;