国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Regex > 正文

一個關于正則表達式的問題

2020-03-16 21:22:27
字體:
來源:轉載
供稿:網友
再補一個問題 
(.+)、(.)+、.+不是一樣的嗎? 
  1. <script language = "JavaScript">  
  2. var Pattern1=/<.+>/i;  
  3. var Pattern2=/<(.+)>/i;  
  4. var Pattern3=/<(.)+>/i;  
  5.  
  6. alert(Pattern1.exec("<p align=center onclick=dsa>"))  
  7. alert(Pattern2.exec("<p align=center onclick=dsa>"))  
  8. alert(Pattern3.exec("<p align=center onclick=dsa>"))  
  9. </script> 

為什么上面代碼運行結果都不一樣 
有的結果還用逗號分開  是怎么回事呢
復制代碼代碼如下:
exec()返回的是匹配到符合模式的內容的數(shù)組(由整體和按順選排列的子片斷組成),用alert顯示時會顯示數(shù)組toSting()的結果(就是用逗號隔開的字符串)。 
在正則表達式中 . (點)表示除換行符以外的任意字符(在加上m參數(shù)打開多行匹配模式時表示任意字符),用轉義符號/.表示點這個字符本體。

復制代碼代碼如下:
var Pattern3=/<(.)+>/i;  
alert(Pattern3.exec("<p align=center onclick=dsa>")[1])  
為什么得到的是a而不是p?

試試alert(Pattern3.exec("<p align=center onclick=dsa6>")[1])將得到6 
(.)+一路匹配過來,返回的是最后匹中的結果。 

+(加號)表示+前面的模式(或模式片斷)當有至少一個、可有多個。 

出現(xiàn)在正則表達式中的()所包圍的的內容被視為模式中的子片斷,會在exec()中體現(xiàn)出來。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 晋州市| 邹城市| 沾化县| 库车县| 木兰县| 建瓯市| 阳新县| 晋城| 屏山县| 太谷县| 德化县| 左贡县| 长沙县| 城步| 寿光市| 喜德县| 简阳市| 新晃| 叙永县| 广汉市| 五峰| 土默特右旗| 黎平县| 淮滨县| 岐山县| 汾西县| 全南县| 南投市| 新民市| 汶上县| 海兴县| 时尚| 石家庄市| 集安市| 巴里| 龙陵县| 交城县| 城口县| 平潭县| 夹江县| 大埔区|