亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > HTML5 > 正文

關于html字符串正則判斷和匹配的具體使用

2024-09-05 07:23:10
字體:
來源:轉載
供稿:網友

前言

最近在寫一個組件,需要傳入html字符串,里面用到了很多正則來判斷是否是html標簽或者匹配標簽內的文本等,這里記錄下。

如何判斷傳入的字符串包含一個閉合html標簽

  • /<//?[a-z][/s/S]*>/i

這個其實并不能判斷標簽閉合的完整性或者順序等,只是判斷字符串中是否有html標簽(包含自定義標簽),這對我來說足夠了。這給正則里面需要學習的就是[/s/S]可以代表一切字符串。

  • /<([a-z][/s/S]*)>.*<///1>/i

這個就更加規范一些可以匹配一個完整閉合的標簽,/1代表前面的圓括號內捕獲的內容,是正則的比較高級的用法。

如何匹配出一個標簽內的文本內容

str = str.replace(/<title>[/s/S]*?<//title>/, '<title>' + newTitle + '<//title>');
  • 最好用一個語義化標簽或者自定義標簽來做匹配,如果使用div這種一段字符串中可能有好多個的,問題會很多。
  • [sS]*代表任意字符
  • *后面的?代表非貪婪模式,因為正則匹配默認都是貪婪模式的

總結

用正則從html標簽中匹配文字其實是一種很低效的方式,不到必要時候也沒必要去使用,有篇文章深刻的批判了這種行為有興趣可以看一下。

常見正則表達式

匹配中文字符的正則表達式: [u4e00-u9fa5]  
評注:匹配中文還真是個頭疼的事,有了這個表達式就好辦了
匹配雙字節字符(包括漢字在內):[^x00-xff]
評注:可以用來計算字符串的長度(一個雙字節字符長度計2,ASCII字符計1)
匹配空白行的正則表達式:ns*r
評注:可以用來刪除空白行
匹配HTML標記的正則表達式:<(S*?)[^>]*>.*?|<.*? />
評注:網上流傳的版本太糟糕,上面這個也僅僅能匹配部分,對于復雜的嵌套標記依舊無能為力
匹配首尾空白字符的正則表達式:^s*|s*$
評注:可以用來刪除行首行尾的空白字符(包括空格、制表符、換頁符等等),非常有用的表達式
匹配Email地址的正則表達式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*
評注:表單驗證時很實用
匹配網址URL的正則表達式:^(http|https):////[/w/-_]+(/.[/w/-_]+)+([/w/-/.,@?^=%&amp;:/~/+#]*[/w/-/@?^=%&amp;/~/+#])?$
評注:網上流傳的版本功能很有限,上面這個基本可以滿足需求
匹配帳號是否合法(字母開頭,允許5-16字節,允許字母數字下劃線):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
評注:表單驗證時很實用
匹配國內電話號碼:d{3}-d{8}|d{4}-d{7}
評注:匹配形式如 0511-4405222 或 021-87888822
匹配騰訊QQ號:[1-9][0-9]{4,}
評注:騰訊QQ號從10000開始
匹配中國郵政編碼:[1-9]d{5}(?!d)
評注:中國郵政編碼為6位數字
匹配身份證:d{15}|d{18}
評注:中國的身份證為15位或18位
匹配ip地址:d+.d+.d+.d+
評注:提取ip地址時有用
匹配特定數字:
  ^[1-9]d*$    //匹配正整數
  ^-[1-9]d*$   //匹配負整數
  ^-?[1-9]d*$   //匹配整數
  ^[1-9]d*|0$  //匹配非負整數(正整數 + 0)
  ^-[1-9]d*|0$   //匹配非正整數(負整數 + 0)
  ^[1-9]d*.d*|0.d*[1-9]d*$   //匹配正浮點數
  ^-([1-9]d*.d*|0.d*[1-9]d*)$  //匹配負浮點數
  ^-?([1-9]d*.d*|0.d*[1-9]d*|0?.0+|0)$  //匹配浮點數
  ^[1-9]d*.d*|0.d*[1-9]d*|0?.0+|0$   //匹配非負浮點數(正浮點數 + 0)
  ^(-([1-9]d*.d*|0.d*[1-9]d*))|0?.0+|0$  //匹配非正浮點數(負浮點數 + 0)
評注:處理大量數據時有用,具體應用時注意修正
匹配特定字符串:
  ^[A-Za-z]+$  //匹配由26個英文字母組成的字符串
  ^[A-Z]+$  //匹配由26個英文字母的大寫組成的字符串
  ^[a-z]+$  //匹配由26個英文字母的小寫組成的字符串
  ^[A-Za-z0-9]+$  //匹配由數字和26個英文字母組成的字符串
  ^w+$  //匹配由數字、26個英文字母或者下劃線組成的字符串
在使用RegularExpressionValidator驗證控件時的驗證功能及其驗證表達式介紹如下:
只能輸入數字:“^[0-9]*$”
只能輸入n位的數字:“^d{n}$”
只能輸入至少n位數字:“^d{n,}$”
只能輸入m-n位的數字:“^d{m,n}$”
只能輸入零和非零開頭的數字:“^(0|[1-9][0-9]*)$”
只能輸入有兩位小數的正實數:“^[0-9]+(.[0-9]{2})?$”
只能輸入有1-3位小數的正實數:“^[0-9]+(.[0-9]{1,3})?$”
只能輸入非零的正整數:“^+?[1-9][0-9]*$”
只能輸入非零的負整數:“^-[1-9][0-9]*$”
只能輸入長度為3的字符:“^.{3}$”
只能輸入由26個英文字母組成的字符串:“^[A-Za-z]+$”
只能輸入由26個大寫英文字母組成的字符串:“^[A-Z]+$”
只能輸入由26個小寫英文字母組成的字符串:“^[a-z]+$”
只能輸入由數字和26個英文字母組成的字符串:“^[A-Za-z0-9]+$”
只能輸入由數字、26個英文字母或者下劃線組成的字符串:“^w+$”
驗證用戶密碼:“^[a-zA-Z]w{5,17}$”正確格式為:以字母開頭,長度在6-18之間, 只能包含字符、數字和下劃線。
驗證是否含有^%&'',;=?$"等字符:“[^%&'',;=?$x22]+”
只能輸入漢字:“^[u4e00-u9fa5],{0,}$”
驗證Email地址:“^w+[-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$”
驗證電話號碼:“^((d{3,4})|d{3,4}-)?d{7,8}$”
正確格式為:“XXXX-XXXXXXX”,“XXXX-XXXXXXXX”,“XXX-XXXXXXX”,
“XXX-XXXXXXXX”,“XXXXXXX”,“XXXXXXXX”。
驗證身份證號(15位或18位數字):“^d{15}|d{}18$”
驗證一年的12個月:“^(0?[1-9]|1[0-2])$”正確格式為:“01”-“09”和“1”“12”
驗證一個月的31天:“^((0?[1-9])|((1|2)[0-9])|30|31)$”
正確格式為:“01”“09”和“1”“31”。
匹配中文字符的正則表達式: [u4e00-u9fa5]
匹配雙字節字符(包括漢字在內):[^x00-xff]
匹配空行的正則表達式:n[s| ]*r
匹配HTML標記的正則表達式:/<(.*)>.*|<(.*) />/
匹配首尾空格的正則表達式:(^s*)|(s*$) 

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国内揄拍国内精品少妇国语| 欧美一级大片在线观看| 国产极品jizzhd欧美| 欧美高清电影在线看| 欧美在线国产精品| 91精品国产成人| 国产精品一区二区三区在线播放| 亚洲高清av在线| 久久躁日日躁aaaaxxxx| 欧美日韩亚洲网| 欧美日韩亚洲视频一区| 欧美激情亚洲综合一区| 精品久久久久久久久久久久久久| 亚洲free嫩bbb| 欧美猛交免费看| 欧美激情a∨在线视频播放| 国产成人avxxxxx在线看| 91精品视频在线| 久久影视免费观看| 国产成人久久久| 久久噜噜噜精品国产亚洲综合| 日韩精品极品毛片系列视频| 国内精品在线一区| 尤物九九久久国产精品的特点| 日韩麻豆第一页| 亚洲欧美日韩久久久久久| 久久久最新网址| 久久在精品线影院精品国产| 国产精品视频yy9099| 欧美人交a欧美精品| 国产一区私人高清影院| 91精品免费视频| 人体精品一二三区| 亚洲精品成a人在线观看| 亚洲欧美国产另类| 久久久精品在线观看| 国产91ⅴ在线精品免费观看| 97av在线视频免费播放| 国产精品日韩欧美综合| 国产精品久久久久久久久久东京| 亚洲成人激情在线观看| 国产精国产精品| 欧美富婆性猛交| 国产91色在线|免| 久久综合88中文色鬼| 8090理伦午夜在线电影| 欧美日韩国产在线播放| 亚洲女同精品视频| 欧美激情视频在线免费观看 欧美视频免费一| 中文字幕日韩专区| 亚洲一区二区中文字幕| 在线成人一区二区| 97精品国产aⅴ7777| 亚洲美女动态图120秒| 国产精品视频网| 欧美激情第99页| 97成人超碰免| 日韩视频中文字幕| 国产综合在线看| 亚洲人成在线观看网站高清| 国产免费久久av| 中文字幕亚洲欧美在线| 日韩经典第一页| 国产精品久久久久久一区二区| 亚洲欧美日本精品| 日韩中文字在线| 欧美高清不卡在线| 久久久久久欧美| 欧美在线免费看| 黄色精品在线看| 欧美激情二区三区| 午夜精品一区二区三区在线| 91免费在线视频网站| 97国产真实伦对白精彩视频8| 国产精品福利网站| 国产精品美女网站| 深夜精品寂寞黄网站在线观看| 亚洲精选中文字幕| 国产精品爽爽ⅴa在线观看| 久久久精品国产一区二区| 国内外成人免费激情在线视频| 中文字幕日韩av综合精品| 亚洲一区二区免费| 亚洲国产精品悠悠久久琪琪| 91成人免费观看网站| 国产欧美日韩精品专区| 国产精品久久久久久搜索| 国产日韩在线播放| 国产69久久精品成人| 456亚洲影院| 国产亚洲精品久久久久久牛牛| 九九热在线精品视频| 国产成人精品综合| 亚洲精品视频在线观看视频| 亚洲午夜未满十八勿入免费观看全集| 性欧美长视频免费观看不卡| 欧美性xxxx极品高清hd直播| 久久久精品电影| 日日骚久久av| 国产女同一区二区| 亚洲激情视频网站| 91国偷自产一区二区三区的观看方式| 欧美日韩国产精品一区二区三区四区| 国外成人在线播放| 亚洲欧美日韩中文在线| 国产成人一区二区三区小说| 亚洲第一区在线| 欧美日韩国产成人在线观看| 国产香蕉97碰碰久久人人| 91精品国产色综合久久不卡98口| wwwwwwww亚洲| 最近2019中文免费高清视频观看www99| 伊人久久男人天堂| 一本一道久久a久久精品逆3p| 国产成人精彩在线视频九色| 久久久99免费视频| 久久伊人色综合| 欧美俄罗斯乱妇| xxxxx91麻豆| 亚洲精品国产欧美| 国产69精品久久久久9| 3344国产精品免费看| 成人性生交大片免费观看嘿嘿视频| 色综合色综合网色综合| 日韩欧美国产黄色| 91中文在线视频| 亚洲女人天堂网| 国产午夜精品视频免费不卡69堂| 亚洲精品免费网站| 国产午夜精品久久久| 欧美亚洲激情视频| 国产91精品网站| 成人网在线视频| 国产精品偷伦免费视频观看的| 日韩电影视频免费| 国产一区二区三区免费视频| 欧美视频不卡中文| 91牛牛免费视频| 欧美成人性色生活仑片| 久久影视电视剧免费网站清宫辞电视| 51色欧美片视频在线观看| 精品久久久国产精品999| 疯狂做受xxxx高潮欧美日本| 久久伊人精品一区二区三区| 欧美在线观看日本一区| 欧美成人三级视频网站| 久久久成人精品| 亚洲国产精品美女| 亚洲欧美制服第一页| 亚洲美女黄色片| 亚洲男女自偷自拍图片另类| 欧美性视频在线| 日韩成人黄色av| 国产免费久久av| 欧美激情国内偷拍| 亚洲视频在线播放| 亚洲天堂成人在线| 亚洲综合大片69999| 日韩电影免费在线观看| 亚洲欧美日韩中文在线| 91产国在线观看动作片喷水| 国产精品久久久久77777| 国产精品视频地址| 欧美日韩亚洲高清|