Javascript 从文本中删除特定模式

Javascript 从文本中删除特定模式,javascript,regex,Javascript,Regex,我有一个来自API的文本: Lorem ipsum dolor sit amet,Concertetur adipising elit,sed do eiusmod temporal incident ut laboure et dolore Lorem ipsum door sit amet,Concertetur adipiscing elite,sed do eiusmod temporal incident ut laboure et dolore 我试图从文本中删除出现的style=

我有一个来自API的文本:

Lorem ipsum dolor sit amet,Concertetur adipising elit,sed do eiusmod temporal incident ut laboure et dolore

Lorem ipsum door sit amet,Concertetur adipiscing elite,sed do eiusmod temporal incident ut laboure et dolore

我试图从文本中删除出现的
style=“font-weight:bold..etc”
,然后拆分段落并将其放入数组中。我使用了regexp,我做了很多尝试,但我的尝试似乎都不能解决这个问题

语言为javascript:

t1=text.replace(/^style*\“$/g.”)
t2=t1.分割(/($)/gm)

您离回答太近了,只需改进regx即可:

var t1='

Lorem ipsum door sit amet,Concertetur adipising elit,sed do eiusmod temporal incidedut ut laboure et dolore

Lorem ipsum door sit amet,Concertetur adipising elit,sed do eiusmod temporal incidedut ut labor et dolore

”; t1=t1.replace(/style=\“[\S]+\”/gm,”);
log(t1);如果这是浏览器端的JavaScript,那么,正如@JamesCoyle所建议的,最好使用DOM来实现这一点

(在这里插入关于不应该使用正则表达式解析HTML的谷歌言论)

consthtml=”

Lorem ipsum dolor sit amet、CONCETETETUR adipiscing elit、sed do eiusmod TEMPORT INDIDUT ut Labor et dolore

\n

Lorem ipsum door sit amet,Concertetur adipising elit,sed do eiusmod temporal incidedut ut labor et dolore

' 提取段落文本(html); 函数提取段落文本(html){ const tempDiv=document.createElement(“div”); tempDiv.innerHTML=html; 常量结果=[]; tempDiv.querySelectorAll(“p”).forEach(e=>result.push(e.textContent)); 返回结果; }
你可以试试这个

const text = "<p style='font-color:#000;font-weight:bold'>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore</p><p style='font-color:#000;font-weight:500'>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore</p>";

str = text.replace(/style="[^"]*"/g, '');
现在,对于拆分p标记

str = str.substring(1, str.length-1);
let strArray = str.split(/></g);
for(var i = 0; i < strArray.length; i++){
    strArray[i] = '<' + strArray[i] + '>';
}
console.log(strArray);
str=str.substring(1,str.length-1);

让strArray=str.split(/>我个人只需将它们附加到文档中,然后查询选择它们并循环它们以获得内部文本。非常感谢,对我来说,
replace
的第二个选项已经起作用了。。非常感谢,这项工作对我来说很好,也感谢您提供有关使用regexp解析HTML的建议
str = text.replace(/style="[^"]*"/g, '');
str = str.substring(1, str.length-1);
let strArray = str.split(/></g);
for(var i = 0; i < strArray.length; i++){
    strArray[i] = '<' + strArray[i] + '>';
}
console.log(strArray);
[
"<p >Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore</p>",
"<p >Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore</p>"
]