zoukankan      html  css  js  c++  java
  • JS正则表达式匹配<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; } @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> 发现有换行的情况匹配不了,因为.是匹配除了换行符(/n)以外的任意一个字符。

    第二次尝试:<style(([sS])*?)</style> 成功

    匹配<div>只需要把<style>换成<div>即可

    1. 只替换匹配到的第一个<style>

    var result= testData.replace(<style(([sS])*?)</style>, '');

    2. 会替换所有testData中所有的<style>标签

    var result= testData.replace(/<style(([sS])*?)</style>/g, '');

    g:代表可以进行全局匹配。
    i:代表不区分大小写匹配。
    m:代表可以进行多行匹配。

  • 相关阅读:
    【命令模式】设计模式之命令模式【原创】
    github page搭建自己的页面
    this request has been blocked;the content must be served over https
    【转载】wamp安装ssl证书
    【函数】register_shutdown_function函数详解【原创】
    08 SSM整合案例(企业权限管理系统):10.权限关联与控制
    删除某些自启动弹窗的默认路径
    08 SSM整合案例(企业权限管理系统):09.用户和角色操作
    08 SSM整合案例(企业权限管理系统):08.权限控制
    08 SSM整合案例(企业权限管理系统):07.订单操作
  • 原文地址:https://www.cnblogs.com/xiaxianfei/p/5275601.html
Copyright © 2011-2022 走看看