JavaScript正则表达式匹配 div style标签
测试字符串:
<style>v\:*{
BEHAVIOR:url(#default#VML)
}o\:*
{
BEHAVIOR:url(#default#VML)
}w\:*
{
BEHAVIOR:url(#default#VML)
}
.shape
{
BEHAVIOR:url(#default#VML)
}
</style>
abcdefg
<style>
@font-face
{
font-family:Wingdings;
}
@font-face
{
font-family:Wingdings;
}
@font-face
{
font-family:Calibri;
}@font-face
{
font-family:Tahoma;
}
@pageWordSection1
{size:8.5in11.0in;margin:1.0in1.0in1.0in1.0in;
}P.MsoNormal
{
FONT-SIZE:12pt;MARGIN:0in0in0pt;
FONT-FAMILY:"TimesNewRoman","serif"
}LI.MsoNormal{
FONT-SIZE:12pt;MARGIN:0in0in0pt;FONT-FAMILY:"TimesNewRoman","serif"
}DIV.MsoNormal
{
FONT-SIZE:12pt;MARGIN:0in0in0pt;FONT-FAMILY:"TimesNewRoman","serif"
}
H1
{
FONT-WEIGHT:bold;FONT-SIZE:24pt;MARGIN-LEFT:0in;
MARGIN-RIGHT:0in;
FONT-FAMILY:"TimesNewRoman","serif";
mso-style-priority:9;
mso-style-link:"Heading1Char";mso-margin-top-alt:auto;mso-margin-bottom-alt:auto
}
A:link
{
COLOR:blue;TEXT-DECORATION:underline;mso-style-priority:99
}
SPAN.MsoHyperlink
{
COLOR:blue;TEXT-DECORATION:underline;mso-style-priority:99
}A:visited
{
COLOR:purple;TEXT-DECORATION:underline;mso-style-priority:99
}SPAN.MsoHyperlinkFollowed
{
COLOR:purple;TEXT-DECORATION:underline;mso-style-priority:99
}
P
{
FONT-SIZE:12pt;MARGIN-LEFT:0in;MARGIN-RIGHT:0in;FONT-FAMILY:"TimesNewRoman","serif";
mso-style-priority:99;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto
}
P.MsoAcetate
{
FONT-SIZE:8pt;MARGIN:0in0in0pt;FONT-FAMILY:"Tahoma","sans-serif";
mso-style-priority:99;mso-style-link:"BalloonTextChar"
}
LI.MsoAcetate
{
FONT-SIZE:8pt;MARGIN:0in0in0pt;FONT-FAMILY:"Tahoma","sans-serif";mso-style-priority:99;mso-style-link:"BalloonTextChar"
}DIV.MsoAcetate
{
FONT-SIZE:8pt;MARGIN:0in0in0pt;FONT-FAMILY:"Tahoma","sans-serif";
mso-style-priority:99;mso-style-link:"BalloonTextChar"
}
SPAN.Heading1Char
{
FONT-WEIGHT:bold;mso-style-priority:9;mso-style-link:"Heading1";mso-style-name:"Heading1Char"
}
SPAN.EmailStyle19{
COLOR:#1f497d;FONT-FAMILY:"Arial","sans-serif";mso-style-type:personal-reply
}SPAN.BalloonTextChar
{
FONT-FAMILY:"Tahoma","sans-serif";mso-style-priority:99;mso-style-link:"BalloonText";mso-style-name:"BalloonTextChar"
}
.MsoChpDefault{
FONT-SIZE:10pt;mso-style-type:export-only
}DIV.WordSection1{
page:WordSection1}OL
{
MARGIN-BOTTOM:0in}UL
{
MARGIN-BOTTOM:0in
}
</style>
第一次尝试:<style[^>/]*>(.*?)</style>发现有换行的情况匹配不了,因为.是匹配除了换行符(/n)以外的任意一个字符。
第二次尝试:<style(([\s\S])*?)</style>成功
匹配<div>只需要把<style>换成<div>即可
1.只替换匹配到的第一个<style>
varresult=testData.replace(<style(([\s\S])*?)<\/style>,'');
2.会替换所有testData中所有的<style>标签
varresult=testData.replace(/<style(([\s\S])*?)<\/style>/g,'');
g:代表可以进行全局匹配。
i:代表不区分大小写匹配。
m:代表可以进行多行匹配。
以上内容是小编给大家介绍的JavaScript正则表达式匹配<div><style>标签,希望对大家有所帮助!