婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Java/Js下使用正則表達式匹配嵌套Html標簽

Java/Js下使用正則表達式匹配嵌套Html標簽

熱門標簽:惠安地圖標注 地圖標注店鋪地圖標注酒店 淄博市張店區地圖標注 哈爾濱公司外呼系統代理 浙江營銷外呼系統有哪些 山東外呼系統聯系方式 自己做的電銷機器人 遼寧秒客來電話機器人 上海銷售電銷機器人軟件

js正則表達式替換HTML標簽以及空格(nbsp;)

js代碼:

function filter(text) {
  var reg = /[^>]+>/g;//1、全局匹配g肯定忘記寫,2、>標簽中不能包含標簽實現過濾HTML標簽
  text = text.replace(reg, '');//替換HTML標簽
  text = text.replace(/nbsp;/ig, '');//替換HTML空格
  return text;
  };

在angularJS中使用過濾器過濾富文本數據

app.filter('qxhtml', function () {
  return function (text) {
   var reg = /[^>]+>/g;
   text = text.replace(reg, '');
   text = text.replace(/nbsp;/ig, '');
   if (text.length > 50) {
    text = text.substring(0, 50) + "...";
   }
   return text;
  };
 });

使用過濾器

div class="desc">
{{y.Description| qxhtml}}
/div>

下面是其他網友的補充

js如何使用正則表達式實現過濾HTML標簽?(/[^>]+>/g)

一、總結(點擊顯示或隱藏總結內容)

js進階正則表達式實現過濾HTML標簽(>標簽中不能包含標簽實現過濾HTML標簽:/[^>]+>/g)

var reg=/[^>]+>/g

1、全局匹配g肯定不能忘記寫
2、>標簽中不能包含標簽實現過濾HTML標簽

二、js進階正則表達式實現過濾HTML標簽

實例描述:將一段帶有HTML標簽的文本的HTML標簽過濾掉,轉化為純文本輸出

三、代碼

!DOCTYPE html>
html lang="en">
head>
 meta charset="UTF-8">
 title>過濾HTML標簽/title>
 style type="text/css">
  textarea{
   width: 60%;
   font-size: 18px;
   background: rgba(100,200,50,0.3);
  }
  #text2{
   background:rgba(200,100,50,0.3); 
  }
 /style>
/head>
body>
 textarea id="text1" rows="10" cols="50">/textarea>br>br>
 input type="button" id="btn1" value="過濾HTML標簽">br>br>
 textarea id="text2" rows="10" cols="50">/textarea>
 script type="text/javascript">
  var btn1=document.getElementById('btn1')
  var text1=document.getElementById('text1')
  var text2=document.getElementById('text2')
  btn1.onclick=function (){
   //var reg=/.+>/g
   var reg=/[^>]+>/g //1、全局匹配g肯定忘記寫 2、>標簽中不能包含標簽實現過濾HTML標簽
   text2.value=text1.value.replace(reg,'')
  }
 /script>
/body>
/html>

js 正則表達式去除html字符中所有的標簽(img標簽除外)

廢話不多說,直接上代碼:

description.replace(/(?!img).*?>/g, "");

如果保留img,p標簽,則為:

description.replace(/(?!img|p|\/p).*?>/g, "");

在js中/需要用轉義字符。

通用 HTML 標簽區配正則

最近看網站日志,發現有人在博客上轉了我不知道幾年前寫的一個匹配 HTML 標簽的正則,剛好最近也在做一些相關的事情,頓時來了興趣。就拿回來改改,成了下面這樣,可能會有一些 case 遺漏,歡迎修改,已知在內嵌 script> 復雜內容的處理能力較弱,不過對純 HTML 來說已經夠用,拿來做一些分析工具還是不錯滴。

script type="text/javascript"> 
var str = "br />br/>br>br >中文>div>div id=a>無憂腳本img src=\"http://bbs.51js.com/images/default/logo.gif\" width=\"191\" height='75' border=0 onload=\"if(testver>0  testver500)alert('test');\" \n onerror='alert(\"test\")' />img src=xxx alt=\"hello\njust a test!\">/div>hr >script type=\"test/javascript\" defer>alert(\"just a test!\");\/script>Hello.input type=text value=\"無憂腳本\">br / >img \"\" >/ >!-- 注釋 --> ucren>!-- 再注>釋 -->img alt=' title='\"' />b>123/b>123,34>1lt;bgt;img src=\"http://bbs.51js.com/images/old51js/logo.gif\" />!-- 三注釋>>> -->"; 
var reg = /(?:(?:\/?[A-Za-z]\w*\b(?:[=\s](['"]?)[\s\S]*?\1)*)|(?:!--[\s\S]*?--))\/?>/g; 
alert(str.match(reg).join("\n----------------------------------------------------\n")); 
/script> 

在線測試


[Ctrl+A 全選 注:引入外部Js需再刷新一下頁面才能執行]

有朋友留言說Java直接使用的話會報錯。我后來查了一下,發現Java正則引擎支持的特性相對比較少。在1.6版本中不能使用命名組(貌似1.7的時候開始支持了),否則會報以下錯誤,更別說平衡組了。因此感覺要實現無限級的嵌套匹配不大現實。

java.util.regex.PatternSyntaxException: Look-behind group does not have an obvious maximum length near index XX

在網上搜了好久也沒找到完美的解決方案。不過,我們可以實現有限級Html嵌套標簽匹配。思路相對于無限級來說就簡單了好多,不需要那么多高級的特性。
示例:

div id='container'>BR> div style='background-color:gray;' id='footer'>BR> a id='gotop' href='#' onclick='MGJS.goTop();return false;'>Top/a>BR> a id='powered' >WordPress/a>BR> div id='copyright'>BR> Copyright copy; 2009 簡單生活 —— Kevin Yang的博客BR> /div>BR> div id='themeinfo'>BR> Theme by a >mg12/a>. Valid a >XHTML 1.1/a>BR> and a >CSS 3/a>.BR> /div>BR> /div>BR>/div>

在上面這個示例中,我們打算匹配id為footer的這個嵌套div,而且假設我們預先知道footer這個div里面最多只會嵌套一級div。更多級的情況我們一會兒再講。
footer的開始和結束標簽匹配很簡單:

div [^>]*id='footer'[^>]*>......(這里的省略號是一會要填寫的)/div>

夾在開始和結束標簽之間的內容無非有兩種情況:
內容A: div標簽,并且此div內無嵌套div
內容B: 任意其他內容
然后就是這兩種內容的不斷重復而已。正則表示如下:

(div[^>]*>.*?/div>|.)*?

注意最后面的問號必須要加上,否則由于正則的貪婪匹配特性,footer的閉合標簽會匹配失誤。
OK了,匹配最多嵌套一級div的正則表達式如下:

div [^>]*id='footer'[^>]*>(div[^>]*>.*?/div>|.)*?/div>

那么如果footer標簽里頭最多會嵌套兩級div的話怎么辦呢?
其實也不難,我們只需要把上面的“內容A”部分中的點號稍作替換即可。修改如下:

div [^>]*id='footer'[^>]*>(div[^>]*>(div[^>]*>.*?/div>|.)*?/div>|.)*?/div>

到這里你可能就知道,如果要匹配最多嵌套三級div的話,正則應該怎么寫了:

div [^>]*id='footer'[^>]*>(div[^>]*>(div[^>]*>(div[^>]*>.*?/div>|.)*?/div>|.)*?/div>|.)*?/div>

所以實際上,只要你的html結構不是特別復雜的話,也就是說嵌套不會很深的話,那么你完全可以使用這種方式來匹配嵌套html標簽。

這個正則在Java和Javascript中都可以使用,因為它沒有用到任何高級特性。

接著補充

查找所有的TD區域(最短):

td\s*.*>\s*.*\/td>

查找所有的TR:

tr.*(?=>)(.|\n)*?/tr>

查找所有的TD:

td.*(?=>)(.|\n)*?/td>

正則表達式匹配Html標簽

例1.
以下是一段Html代碼

table boder="0" width="11%" class="somestory">
tr>
td width="100%">
p align="center">其它內容.../p>
/td>
/tr>
/table>
table border="0" width="11%" class="headline">
tr>
td width="100%">
p align="center">典經HTML正則表達式!/p>
/td>
/tr>
/table>
table boder="0" width="11%" class="someotherstory">
tr>
td width="100%">
p align="center">其它內容.../p>
/td>
/tr>
/table>

正則表過式:table.*(?=headline)
說明:正則表達式匹配表格開始標記,能夠返回開始標記直至 “headline”之間的所有內容(換行除外);
就是以上紅色標示出來的部分。
原理:
table                           //匹配的開始部分
.*                                   //除換行外的所有字符
(?=headline)               //零寬度正預測先行斷言,匹配以 headline 結尾的單詞的前面部分(除了 headline 以外的部分)

例2.

table boder="0" width="11%" class="somestory">
tr>
td width="100%">
p align="center">其它內容.../p>
/td>
/tr>
/table>
table border="0" width="11%" class="headline">
tr>
td width="100%">
p align="center">典經HTML正則表達式!/p>
/td>
/tr>
/table>
table boder="0" width="11%" class="someotherstory">
tr>
td width="100%">
p align="center">其它內容.../p>
/td>
/tr>
/table>

正則表達式:table.*(?=headline)(.|\n)*?/table>
說明:匹配最長的以 table border="0" width="11%" class=" 開始, 以/table>結束的字符串,就是以上以紅色標示出來的部分。

原理:

table.*(?=headline)                  //參見記錄1的說明
(.|\n)                                             //指示在兩個或多個項之間進行選擇,(zlf)ood 與 "zood" 或 "food" 匹配
*?                                                //應與上一個 (.|\n) 聯合起來看,  .*? 就意味著匹配任意數量的重復,但是在能使整個匹配成功的前提下使用最少的重復,懶惰模式。
/table>                                     //匹配的結束標記

注意:“(.|\n)”后面的 "*" 匹配 0 個到多個任意字符,而“?”使得“*”匹配范圍最小化,即在找到表達式的下一部分之前匹配盡可能少的字符。/table> 是表格的結束標記.

 例3.

tableboder="0" width="11%" class="somestory">
tr>
td width="100%">
p align="center">其它內容.../p>
/td>
/tr>
/table>
tableborder="0" width="11%" class="headline">
tr>
td width="100%">
p align="center">典經HTML正則表達式!/p>
/td>
/tr>
/table>
tableboder="0" width="11%" class="someotherstory">
tr>
td width="100%">
p align="center">其它內容.../p>
/td>
/tr>
/table>

正則表達式:(?tag>[^\s>]+)[^>]*>(.|\n)*?/\ktag>>
說明:匹配成對的HTML標簽,它將會匹配Html標簽及標簽中的內容,本例分三段匹配三個table>標簽及/table>中的內容。
原理:
                                    //html標簽中的
(?tag>[^\s>]+)            // (?name>), 分組命名的方式,[^\s>]:非任何空白字符及“>”至少匹配一次
[^>]*>                            //非“>”匹配 0 到 n 次,及html的標簽“>”.
(.|\n)                              //在兩個或多個項之間時行選擇,(zlf)ood 與 "zood" 或 "food" 匹配.
*?                                  // 應與上一個(.|\n)聯合起來看, .*? 就意味著匹配任意數量的重復,但是在能使整個匹配成功的前提下使用最少的重復,懶惰模式。
/\ktag>>                    //反向引用命名的組,語法為 \kname>, 及html 標簽“>”

注意:“(.|\n)”后面的 "*" 匹配 0 個到多個任意字符,而“?”使得“*”匹配范圍最小化,即在找到表達式的下一部分之前匹配盡可能少的字符。

本例使用了分組命名及反向引用命名組的概念。

正則表達匹配中文

匹配中文字符的正則表達式:   [\u4e00-\u9fa5]
1、先用js把中文轉換16進制碼:d.innerHTML = escape("你們"); 得到 %u4F60%u4EEC, 即 \u4F60\u4EEC
2、var arr = str.match(/\u4F60\u4EEC/g);
3、\u4F60為單個漢字“你”.
4、以上測試程序為javascript

到此這篇關于Java/Js下使用正則表達式匹配嵌套Html標簽的文章就介紹到這了,更多相關正則表達式匹配嵌套Html標簽 內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • java正則表達式四種常用的處理方式(匹配、分割、替代、獲取)
  • JAVA中正則表達式匹配,替換,查找,切割的方法
  • Java使用正則表達式(regex)匹配中文實例代碼
  • Java基于正則表達式實現查找匹配的文本功能【經典實例】
  • Java基于正則表達式實現的替換匹配文本功能【經典實例】
  • Java正則表達式匹配電話格式
  • java正則表達式匹配網頁所有網址和鏈接文字的示例
  • Java正則表達式(匹配、切割、替換、獲取)等方法
  • Java使用正則表達式匹配獲取鏈接地址的方法示例
  • Java正則表達式如何匹配特定html標簽內的內容

標簽:泰州 宣城 綿陽 重慶 長沙 無錫 銅川 西安

巨人網絡通訊聲明:本文標題《Java/Js下使用正則表達式匹配嵌套Html標簽》,本文關鍵詞  Java,下,使用,正則,表達式,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Java/Js下使用正則表達式匹配嵌套Html標簽》相關的同類信息!
  • 本頁收集關于Java/Js下使用正則表達式匹配嵌套Html標簽的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    91麻豆国产香蕉久久精品| 91精品国产欧美日韩| 美女视频黄a大片欧美| 亚洲国产wwwccc36天堂| 五月综合激情婷婷六月色窝| 亚洲国产成人av| 日韩高清电影一区| 国产乱人伦偷精品视频不卡| 成人午夜在线免费| 在线免费亚洲电影| 欧美一区二区三区视频免费 | www久久久久| 中文字幕五月欧美| 日韩成人午夜精品| 国产精品亚洲人在线观看| av亚洲精华国产精华精华| 91成人看片片| 欧美精品一区视频| 一区二区三区精品久久久| 久久99最新地址| 91丨九色丨蝌蚪丨老版| 日韩情涩欧美日韩视频| 亚洲一区二区视频| 狠狠色综合日日| 一本一道综合狠狠老| 日韩视频一区二区在线观看| 中文av一区特黄| 丝袜诱惑制服诱惑色一区在线观看| 久久99精品久久久久久 | 欧美日韩国产色站一区二区三区| 久久综合九色欧美综合狠狠| 亚洲精品欧美专区| 韩国精品免费视频| 在线免费不卡视频| 国产精品女上位| 精品在线观看视频| 3d成人h动漫网站入口| 亚洲欧美电影院| 风间由美一区二区三区在线观看| 日韩一区二区视频| 午夜亚洲国产au精品一区二区| 成人av资源在线观看| 欧美精品一区二区三区在线| 伊人一区二区三区| 9i在线看片成人免费| 国产偷v国产偷v亚洲高清| 久久99精品久久只有精品| 欧美三级资源在线| 亚洲一区二区欧美日韩| 不卡视频一二三| 国产精品久久久久久久浪潮网站| 国产一区二区免费看| 日韩欧美一级精品久久| 亚洲.国产.中文慕字在线| 色88888久久久久久影院按摩| 国产精品欧美一级免费| 国产精品69久久久久水密桃| 日韩丝袜情趣美女图片| 日韩高清不卡一区二区| 精品国产麻豆免费人成网站| 亚洲成人免费视频| 色综合色狠狠天天综合色| 久久精品人人做人人综合 | 国产a区久久久| 高清国产一区二区三区| 色94色欧美sute亚洲线路二| 亚洲精品乱码久久久久久久久 | 大胆欧美人体老妇| 日韩一区二区中文字幕| 尤物在线观看一区| www.亚洲色图.com| 337p日本欧洲亚洲大胆精品 | 丁香另类激情小说| 欧美成人一区二区| 日本中文字幕一区二区有限公司| 在线欧美小视频| 国产精品国产三级国产普通话99| 午夜av电影一区| 欧美大胆人体bbbb| 青青青伊人色综合久久| 欧美群妇大交群的观看方式| 91一区在线观看| 亚洲国产激情av| 国产精品一区二区久久不卡| 精品日韩欧美一区二区| 麻豆久久久久久久| 欧美日韩精品系列| 香港成人在线视频| 欧美高清一级片在线| 免费一级片91| 精品成人一区二区三区四区| 狠狠久久亚洲欧美| 久久久亚洲国产美女国产盗摄| 国产一区二区三区在线观看免费 | 91女人视频在线观看| 亚洲视频一区在线| 色噜噜偷拍精品综合在线| 欧美xxxxx裸体时装秀| 久久综合综合久久综合| 欧美v日韩v国产v| 国产精品一二三区| 国产精品三级av| 99久久精品免费看国产| 一区二区三区精品在线观看| 欧美日韩国产系列| 精品一区二区三区免费| 久久久久国产精品厨房| 成人国产一区二区三区精品| 亚洲欧美经典视频| 国产伦精一区二区三区| 91麻豆蜜桃一区二区三区| 国产亚洲成年网址在线观看| 成人免费观看视频| 一区二区三区高清在线| 欧美精品久久天天躁| 极品瑜伽女神91| 欧美写真视频网站| 久久电影网电视剧免费观看| 欧美日韩午夜精品| 国产主播一区二区三区| 日韩一区中文字幕| 欧美日本视频在线| 国产精品中文字幕一区二区三区| 中文字幕一区二区不卡| 欧美一区二区三区人| 成人免费视频caoporn| 婷婷开心激情综合| 欧美一区二区视频观看视频| 色狠狠av一区二区三区| 美国欧美日韩国产在线播放| 一色屋精品亚洲香蕉网站| 欧美日韩www| 成人av电影在线观看| 日韩中文字幕区一区有砖一区| 国产精品视频在线看| 色婷婷av一区二区三区之一色屋| 亚洲老妇xxxxxx| 国产亚洲午夜高清国产拍精品| 欧美无砖专区一中文字| 丁香激情综合国产| 日日摸夜夜添夜夜添亚洲女人| 国产丝袜欧美中文另类| 91精品国产麻豆国产自产在线| 成人黄色在线网站| 麻豆成人av在线| youjizz国产精品| 激情综合一区二区三区| 亚洲国产精品久久一线不卡| 中文字幕亚洲精品在线观看| 久久久久久久综合狠狠综合| 91精品福利在线一区二区三区 | 久久久亚洲午夜电影| 欧美视频完全免费看| 99视频精品全部免费在线| 国产在线国偷精品免费看| 日本成人在线不卡视频| 亚洲综合999| 国产精品天干天干在线综合| 蜜臀99久久精品久久久久久软件| 韩国欧美国产一区| 亚洲成人你懂的| 久久久久久9999| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 日韩美女视频一区二区在线观看| 在线免费精品视频| 91蜜桃传媒精品久久久一区二区| 国产91高潮流白浆在线麻豆 | 国产精品久久久久久久久免费桃花| 精品精品国产高清a毛片牛牛| 51精品久久久久久久蜜臀| 欧美亚洲国产一区二区三区| 99久久久无码国产精品| 久久久久88色偷偷免费| 欧美r级电影在线观看| 欧美女孩性生活视频| 欧美老肥妇做.爰bbww视频| 欧美区一区二区三区| 欧美性大战久久久| 国产调教视频一区| 国产色91在线| 中文字幕免费观看一区| 国产欧美日韩视频在线观看| 欧美激情在线看| 国产精品免费视频观看| 国产视频911| 国产精品系列在线| 日韩亚洲国产中文字幕欧美| 日韩精品一区国产麻豆| 欧美成人精精品一区二区频| 欧美电视剧免费全集观看| 欧美亚洲日本一区| 91精品福利在线一区二区三区 | 色哟哟精品一区| gogo大胆日本视频一区| 91精品1区2区| 欧美一区二区三区小说| 欧美军同video69gay| 一色桃子久久精品亚洲| 亚洲午夜三级在线| 九九九久久久精品|