這篇文章主要介紹了JavaScript正則表達(dá)式匹配<div><style>標(biāo)簽 的相關(guān)資料,需要的朋友可以參考下
測(cè)試字符串:
<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;
}
@page WordSection1
{size: 8.5in 11.0in; margin: 1.0in 1.0in 1.0in 1.0in;
} P.MsoNormal
{
FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt;
FONT-FAMILY: "Times New Roman","serif"
} LI.MsoNormal {
FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman","serif"
} DIV.MsoNormal
{
FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman","serif"
}
H1
{
FONT-WEIGHT: bold; FONT-SIZE: 24pt; MARGIN-LEFT: 0in;
MARGIN-RIGHT: 0in;
FONT-FAMILY: "Times New Roman","serif";
mso-style-priority: 9;
mso-style-link: "Heading 1 Char"; 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: "Times New Roman","serif";
mso-style-priority: 99; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto
}
P.MsoAcetate
{
FONT-SIZE: 8pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Tahoma","sans-serif";
mso-style-priority: 99; mso-style-link: "Balloon Text Char"
}
LI.MsoAcetate
{
FONT-SIZE: 8pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Tahoma","sans-serif"; mso-style-priority: 99; mso-style-link: "Balloon Text Char"
} DIV.MsoAcetate
{
FONT-SIZE: 8pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Tahoma","sans-serif";
mso-style-priority: 99; mso-style-link: "Balloon Text Char"
}
SPAN.Heading1Char
{
FONT-WEIGHT: bold; mso-style-priority: 9; mso-style-link: "Heading 1"; mso-style-name: "Heading 1 Char"
}
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: "Balloon Text"; mso-style-name: "Balloon Text Char"
}
.MsoChpDefault {
FONT-SIZE: 10pt; mso-style-type: export-only
} DIV.WordSection1 {
page: WordSection1 } OL
{
MARGIN-BOTTOM: 0in } UL
{
MARGIN-BOTTOM: 0in
}
</style>
第一次嘗試:<style[^>/]*>(.*?)</style> 發(fā)現(xiàn)有換行的情況匹配不了,因?yàn)?是匹配除了換行符(/n)以外的任意一個(gè)字符。
第二次嘗試:<style(([\s\S])*?)</style> 成功
匹配<div>只需要把<style>換成<div>即可
1. 只替換匹配到的第一個(gè)<style>
var result= testData.replace(<style(([\s\S])*?)<\/style>, '');
2. 會(huì)替換所有testData中所有的<style>標(biāo)簽
var result= testData.replace(/<style(([\s\S])*?)<\/style>/g, '');
g:代表可以進(jìn)行全局匹配。
i:代表不區(qū)分大小寫匹配。
m:代表可以進(jìn)行多行匹配。
以上內(nèi)容是小編給大家介紹的JavaScript正則表達(dá)式匹配<div><style>標(biāo)簽,希望對(duì)大家有所幫助!