好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > javascript RegExp對象(正則表達式)

javascript RegExp對象(正則表達式)

熱門標簽:錫林郭勒盟地圖標注位置 電銷機器人公司簡介 高德地圖標注短信簽約 湖南企業(yè)智能外呼系統(tǒng)供應商 自制電銷機器人 RO地圖標注app 福州工作銷售電話機器人 知名的電話機器人 百音電話機器人
使用RegExp的顯式構造函數(shù),語法為:new RegExp("pattern"[,"flags"])。
使用RegExp的隱式構造函數(shù),采用純文本格式:/pattern/[flags]。
pattern部分為要使用的正則表達式模式文本,是必須的。在第一種方式中,pattern部分以JavaScript字符串的形式存在,需要使用雙引號或單引號括起來;在第二種方式中,pattern部分嵌套在兩個“/”之間,不能使用引號。
flags部分設置正則表達式的標志信息,是可選項。如果設置flags部分,在第一種方式中,以字符串的形式存在;在第二種方式中,以文本的形式緊接在最后一個“/”字符之后。flags可以是以下標志字符的組合。
g是全局標志。如果設置了這個標志,對某個文本執(zhí)行搜索和替換操作時,將對文本中所有匹配的部分起作用。如果不設置這個標志,則僅搜索和替換最早匹配的內容。
i是忽略大小寫標志。如果設置了這個標志,進行匹配比較時,將忽略大小寫。
m是多行標志。如果不設置這個標志,那么元字符“^”只與整個被搜索字符串的開始位置相匹配,而元字符“$”只與被搜索字符串的結束位置相匹配。如果設置了這個標志,“^”還可以與被搜索字符串中的“\n”或“\r”之后的位置(即下一行的行首)相匹配,而“$”還可以與被搜索字符串中的“\n”或“\r”之后的位置(即下一行的行尾)相匹配。
代碼8.1是一個創(chuàng)建正則表達式的例子。
代碼8.1 創(chuàng)建正則表達式:8.1.htm

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

上面代碼的運行結果如圖8.1所示。
由于JavaScript字符串中的“\”是一個轉義字符,因此,使用顯式構造函數(shù)創(chuàng)建RegExp實例對象時,應將原始正則表達式中的“\”用“\\”替換。例如,在代碼8.2中的兩條語句是等價的。
代碼8.2 轉義字符中的“\”:8.2.htm
script language="javascript">
var re1 = new RegExp("\\d{5}");
var re2 = /\d{5}/;
alert("re1="+re1+"\nre2="+re2);
/script>
程序顯示結果如圖8.2所示??梢钥闯?,兩者結果相同。
由于正則表達式模式文本中的轉義字符也是“\”,如果正則表達式中要匹配原義字符“\”,在正則表達式模式文本中要以“\\”來表示,當使用顯式構造函數(shù)的方式創(chuàng)建RegExp實例對象的時候,就需要使用“\\\\”來表示原義字符“\”。
var re = new RegExp(\\\\)。
8.4 RegExp對象的屬性
RegExp對象的屬性分為靜態(tài)屬性和實例屬性。下面分別進行介紹。
8.4.1 靜態(tài)屬性
(1)index屬性。是當前表達式模式首次匹配內容的開始位置,從0開始計數(shù)。其初始值為-1,每次成功匹配時,index屬性都會隨之改變。
(2)input屬性。返回當前所作用的字符串,可以簡寫為$_,初始值為空字符串""。
(3)lastIndex屬性。是當前表達式模式首次匹配內容中最后一個字符的下一個位置,從0開始計數(shù),常被作為繼續(xù)搜索時的起始位置,初始值為-1,表示從起始位置開始搜索,每次成功匹配時,lastIndex屬性值都會隨之改變。
(4)lastMatch屬性。是當前表達式模式的最后一個匹配字符串,可以簡寫為$。其初始值為空字符串""。在每次成功匹配時,lastMatch屬性值都會隨之改變。
(5)lastParen屬性。如果表達式模式中有括起來的子匹配,是當前表達式模式中最后的子匹配所匹配到的子字符串,可以簡寫為$+。其初始值為空字符串""。每次成功匹配時,lastParen屬性值都會隨之改變。
(6)leftContext屬性。是當前表達式模式最后一個匹配字符串左邊的所有內容,可以簡寫為$`(其中“'”為鍵盤上“Esc”下邊的反單引號)。初始值為空字符串""。每次成功匹配時,其屬性值都會隨之改變。
(7)rightContext屬性。是當前表達式模式最后一個匹配字符串右邊的所有內容,可以簡寫為$'。初始值為空字符串""。每次成功匹配時,其屬性值都會隨之改變。
(8)$1…$9屬性。這些屬性是只讀的。如果表達式模式中有括起來的子匹配,$1…$9屬性值分別是第1個到第9個子匹配所捕獲到的內容。如果有超過9個以上的子匹配,$1…$9屬性分別對應最后的9個子匹配。在一個表達式模式中,可以指定任意多個帶括號的子匹配,但RegExp對象只能存儲最后的9個子匹配的結果。在RegExp實例對象的一些方法所返回的結果數(shù)組中,可以獲得所有圓括號內的子匹配結果。
8.4.2 實例屬性
(1)global屬性。返回創(chuàng)建RegExp對象實例時指定的global標志(g)的狀態(tài)。如果創(chuàng)建RegExp對象實例時設置了g標志,該屬性返回True,否則返回False,默認值為False。
(2)ignoreCase屬性。返回創(chuàng)建RegExp對象實例時指定的ignoreCase標志(i)的狀態(tài)。如果創(chuàng)建RegExp對象實例時設置了i標志,該屬性返回True,否則返回False,默認值為False。
(3)multiLine屬性。返回創(chuàng)建RegExp對象實例時指定的multiLine標志(m)的狀態(tài)。如果創(chuàng)建RegExp對象實例時設置了m標志,該屬性返回True,否則返回False,默認值為False。
(4)source屬性。返回創(chuàng)建RegExp對象實例時指定的表達式文本字符串。
8.5 RegExp對象的方法
RegExp對象的常用方法有test、exec和compile,本節(jié)介紹這些方法的功能和用法。最后,對RegExp對象的屬性和方法進行一個綜合舉例。
8.5.1 test方法
語法格式為test(str)。該方法檢查一個字符串中是否存在創(chuàng)建RegExp對象實例時所指定的表達式模式,如果存在就返回True,否則返回False。如果找到匹配項,則會更新RegExp對象中的有關靜態(tài)屬性,以反映匹配情況。關于該方法的使用,后面的8.10節(jié)中會經常用到,這里不再單獨舉例。
8.5.2 exec方法
語法格式為exec(str)。該方法使用創(chuàng)建RegExp對象實例時所指定的表達式模式對一個字符串進行搜索,并返回一個包含搜索結果的數(shù)組。
如果為正則表達式設置了全局標志(g),可以通過多次調用exec和test方法在字符串中進行連續(xù)搜索,每次都是從RegExp對象的lastIndex屬性值指定的位置開始搜索字符串。
如果沒有設置全局標志(g),則exec和test方法忽略RegExp對象的lastIndex屬性值,從字符串的起始位置開始搜索。
如果exec方法沒有找到匹配,返回值為null;如果找到匹配,則返回一個數(shù)組,并更新RegExp對象中有關靜態(tài)屬性以反映匹配情況。返回數(shù)組中的元素0包含了完整的匹配結果,而元素1~n依次是表達式模式中定義的各個子匹配的結果。
exec方法返回的數(shù)組有3個屬性,分別是input、index和lastIndex。
input屬性是整個被搜索的字符串。
index屬性是指匹配在整個被搜索字符串中的位置。
lastIndex屬性是指匹配的子字符串的最后一個字符的下一個字符位置。
代碼8.3是對該方法的應用舉例。
代碼8.3 exec()方法應用:8.3.htm

[Ctrl+A 全選 注:引入外部Js需再刷新一下頁面才能執(zhí)行]
上面代碼的運行結果如圖8.3所示。
圖8.3 運行結果
8.5.3 compile方法
語法格式為compile("pattern"[,"flags"])。該方法可以更換RegExp對象實例所使用的表達式模式,并將新的表達式模式編譯為內部格式,從而使以后的匹配過程執(zhí)行更快。如果要在循環(huán)中重復使用某個表達式,對其進行編譯將使執(zhí)行加速。但是,如果在程序中使用了任何其他表達式模式后,再使用原來編譯過的表達式模式,則這種編譯毫無 益處
您可能感興趣的文章:
  • 深入淺析JavaScript中的RegExp對象
  • 詳解JavaScript RegExp對象
  • RegExp 隨筆 JavaScript RegExp 對象
  • 淺談JS正則表達式的RegExp對象和括號的使用
  • JS正則中的RegExp對象對象
  • js正則表達式之RegExp對象之compile方法 編譯正則表達式
  • JavaScript RegExp 對象用法詳解

標簽:怒江 吉林 河北 玉林 秦皇島 茂名 昆明 西寧

巨人網絡通訊聲明:本文標題《javascript RegExp對象(正則表達式)》,本文關鍵詞  javascript,RegExp,對象,正則,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《javascript RegExp對象(正則表達式)》相關的同類信息!
  • 本頁收集關于javascript RegExp對象(正則表達式)的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 东北农村妇女野战伦理| 冰漪人体高清大胆私拍www| 91九色PORNY入口| 18美女高潮喷在撒尿| 黄色软件快播| 欧美高清国产在线观看| 成人国产一区二区三区| 一女多男3根一起进去描述| 学长被C哭爬走又被拉回来视频| 啊啊啊啊湿了| 一级一级特黄女人精品毛片视频| 好男人影视在线WWW官网| 嫩草的香味在线观看| 中国女人内谢69ⅩXXX麻豆| 久久亚洲精品成人| 向往的生活免费| 成人无码亚洲精品午夜精品| 99这里只有精品| 国产一级生活片| 宅男噜噜66国产精品观看| 吻胸揉屁股摸腿娇喘小说公交车| 日韩一品二品三品| www.老鸭窝| 古装无遮挡一级毛片| 欧美16一18sexvideos| 古装中国毛片| 女人把下面扒开让男人爽| 扒开双腿疯狂进出爽视频欧美性色| 日韩精品视频三区| 欧美三级所有电影| 360水滴真实抓拍系列| 麻豆精品国产一区二区三区四区| 日本性生活免费看| 免费一级淫片aa| 欧美一级婬片A片免费播放绣春| 欧美亚洲日韩另类中文字幕麻豆| 伧理片80s电影网在线一级| 动漫美女被艹| 美女打开双腿??含羞视频| po国产另类TS人妖一区二区| 机机对机机免费软件下载大全漫画|