Javascript 在正则表达式中全局替换HTML字符串

Javascript 在正则表达式中全局替换HTML字符串,javascript,regex,Javascript,Regex,我有一个如下的HTML字符串: 我的猫我的狗12345 我想使用正则表达式来替换全局字符串(将更改为,然后删除所有HTML,只保留: 我的猫我的狗12345 我尝试使用以下代码: var formatHTMLQuill = function (stringHTML) { let t = stringHTML.replace('</div><div>', '<br/>'); let n = t.replace(/<(?!br\s*\/?)[^>

我有一个如下的HTML字符串:

我的猫我的狗12345

我想使用正则表达式来替换全局字符串(将
更改为

,然后删除所有HTML,只保留

我的猫
我的狗
12345

我尝试使用以下代码:

var formatHTMLQuill = function (stringHTML) {
  let t = stringHTML.replace('</div><div>', '<br/>');
  let n = t.replace(/<(?!br\s*\/?)[^>]+>/g, '')
  return n
}
var formatHTMLQuill=函数(stringHTML){
让t=stringHTML.replace(“”,
); 设n=t.replace(/]+>/g',) 返回n }
但它不起作用,结果是
我的猫
我的狗12345

您可以先删除
,然后将
替换为

var formatHTMLQuill=函数(stringHTML){
让t=stringHTML.replace(/\/g');
设n=t.replace(/\/g,
) 返回n }
log(formatHTMLQuill(“testtest1”)
您可以使用带有全局标志的正则表达式
g
g
修饰符用于执行全局匹配(查找所有匹配,而不是在第一次匹配后停止)

var html=`My catMy dog12345`
var formatHTMLQuill=函数(stringHTML){
让t=stringHTML.replace(//ig',)//删除start div
.replace(//ig,
)//替换关闭 .替换(/(\s*)+$/,“”);//删除最后一个
返回t; }
console.log(formatHTMLQuill(html));
请验证以下代码:

var formatHTMLQuill=函数(stringHTML){
让t=stringHTML.replace(/()/g,
); 设n=t,替换(/(|)g,,); 返回(n); }
log(formatHTMLQuill(“My catMy dog12345”);
我认为它只替换了
let t=stringHTML.replace(“”
)中的第一次出现
@NambiMurugan是的,您需要带有
g
标志的regexp来强制执行
。替换
可以多次执行。是否要在结尾处删除
?是否要在结尾处删除
?欢迎@feedGit