亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁 > 知識庫 > 正則表達式regular expression詳述(一)

正則表達式regular expression詳述(一)

熱門標簽:地圖標注與公司業務關系 大學校門地圖標注 銷售電銷機器人詐騙 廣西智能外呼系統多少錢 平涼高德地圖標注商戶要收費嗎 提高電話機器人接通率 福建微碼電話機器人 外呼系統api對接 荊州智能電銷機器人
 正則表達式是regular expression,看來英文比中文要好理解多了,就是檢查表達式符
不符合規定??!正則表達式有一個功能十分強大而又十分復雜的對象RegExp,在JavaScript1.2 版本以
上提供。
    下面我們看看有關正則表達式的介紹:
    正則表達式對象用來規范一個規范的表達式(也就是表達式符不符合特定的要求,比如是不是Email
地址格式等),它具有用來檢查給出的字符串是否符合規則的屬性和方法。
    除此之外,你用RegExp構造器建立的個別正則表達式對象的屬性,就已經預先定義好了正則表達式
對象的靜態屬性,你可以隨時使用它們。
    核心對象:
    在JavaScript 1.2, NES 3.0以上版本提供。
    在JavaScript 1.3以后版本增加了toSource方法。
    建立方法:
    文字格式或RegExp構造器函數。
    文字建立格式使用以下格式:
    /pattern/flags即/模式/標記

    構造器函數方法使用方法如下:
    new RegExp("pattern"[, "flags"])即new RegExp("模式"[,"標記"])

    參數:
    pattern(模式)
    表示正則表達式的文本

    flags(標記)
    如果指定此項,flags可以是下面值之一:
    g: global match(全定匹配)
    i: ignore case(忽略大小寫)
    gi: both global match and ignore case(匹配所有可能的值,也忽略大小寫)

    注意:文本格式中的參數不要使用引號標記,而構造器函數的參數則要使用引號標記。所以下面的
表達式建立同樣的正則表達式:
    /ab+c/i
  new RegExp("ab+c", "i")

    描述:
    當使用構造函數的時候,必須使用正常的字符串避開規則(在字符串中加入前導字符 )是必須的。
    例如,下面的兩條語句是等價的:
    re = new RegExp("\w+")
    re = /w+/

    下面的提供了在正則表達式中能夠使用的完整對特殊字符的一個完整的列表和描述。

    表1.3:正則表達式中的特殊字符:

    字符
    意義:對于字符,通常表示按字面意義,指出接著的字符為特殊字符,不作解釋。
    例如:/b/匹配字符'b',通過在b 前面加一個反斜杠,也就是/b/,則該字符變成特殊字符,表示
匹配一個單詞的分界線。
    或者:   
    對于幾個字符,通常說明是特殊的,指出緊接著的字符不是特殊的,而應該按字面解釋。
    例如:*是一個特殊字符,匹配任意個字符(包括0個字符);例如:/a*/意味匹配0個或多個a。
    為了匹配字面上的*,在a前面加一個反斜杠;例如:/a*/匹配'a*'。

    字符^
    意義:表示匹配的字符必須在最前邊。
    例如:/^A/不匹配"an A,"中的'A',但匹配"An A."中最前面的'A'。

    字符$
    意義:與^類似,匹配最末的字符。
    例如:/t$/不匹配"eater"中的't',但匹配"eat"中的't'。

    字符*
    意義:匹配*前面的字符0次或n次。
    例如:/bo*/匹配"A ghost booooed"中的'boooo'或"A bird warbled"中的'b',但不匹配"A goat g
runted"中的任何字符。

    字符+
    意義:匹配+號前面的字符1次或n次。等價于{1,}。
    例如:/a+/匹配"candy"中的'a'和"caaaaaaandy."中的所有'a'。

    字符?
    意義:匹配?前面的字符0次或1次。
    例如:/e?le?/匹配"angel"中的'el'和"angle."中的'le'。

    字符.
    意義:(小數點)匹配除換行符外的所有單個的字符。
    例如:/.n/匹配"nay, an apple is on the tree"中的'an'和'on',但不匹配'nay'。


    字符(x)
    意義:匹配'x'并記錄匹配的值。
    例如:/(foo)/匹配和記錄"foo bar."中的'foo'。匹配子串能被結果數組中的素[1], ..., [n] 返
回,或被RegExp對象的屬性$1, ..., $9返回。

    字符x|y
    意義:匹配'x'或者'y'。
    例如:/green|red/匹配"green apple"中的'green'和"red apple."中的'red'。

    字符{n}
    意義:這里的n是一個正整數。匹配前面的n個字符。
    例如:/a{2}/不匹配"candy,"中的'a',但匹配"caandy," 中的所有'a'和"caaandy."中前面的兩個
'a'。

    字符{n,}
    意義:這里的n是一個正整數。匹配至少n個前面的字符。
    例如:/a{2,}不匹配"candy"中的'a',但匹配"caandy"中的所有'a'和"caaaaaaandy."中的所有'a'

    字符{n,m}
    意義:這里的n和m都是正整數。匹配至少n個最多m個前面的字符。
    例如:/a{1,3}/不匹配"cndy"中的任何字符,但匹配 "candy,"中的'a',"caandy," 中的前面兩個
'a'和"caaaaaaandy"中前面的三個'a',注意:即使"caaaaaaandy" 中有很多個'a',但只匹配前面的三
個'a'即"aaa"。

    字符[xyz]
    意義:一字符列表,匹配列出中的任一字符。你可以通過連字符-指出一個字符范圍。
    例如:[abcd]跟[a-c]一樣。它們匹配"brisket"中的'b'和"ache"中的'c'。

    字符[^xyz]
    意義:一字符補集,也就是說,它匹配除了列出的字符外的所有東西。 你可以使用連字符-指出一
字符范圍。
    例如:[^abc]和[^a-c]等價,它們最早匹配"brisket"中的'r'和"chop."中的'h'。

    字符[b]
    意義:匹配一個空格(不要與b混淆)

    字符b
    意義:匹配一個單詞的分界線,比如一個空格(不要與[b]混淆)
    例如:/bnw/匹配"noonday"中的'no',/wyb/匹配"possibly yesterday."中的'ly'。

    字符B
    意義:匹配一個單詞的非分界線
    例如:/wBn/匹配"noonday"中的'on',/yBw/匹配"possibly yesterday."中的'ye'。

    字符cX
    意義:這里的X是一個控制字符。匹配一個字符串的控制字符。
    例如:/cM/匹配一個字符串中的control-M。

    字符d
    意義:匹配一個數字,等價于[0-9]。
    例如:/d/或/[0-9]/匹配"B2 is the suite number."中的'2'。

    字符D
    意義:匹配任何的非數字,等價于[^0-9]。
    例如:/D/或/[^0-9]/匹配"B2 is the suite number."中的'B'。

    字符f
    意義:匹配一個表單符

    字符n
    意義:匹配一個換行符

    字符r
    意義:匹配一個回車符

    字符s
    意義:匹配一個單個white空格符,包括空格,tab,form feed,換行符,等價于[ fnrtv]。
    例如:/sw*/匹配"foo bar."中的' bar'。

    字符S
    意義:匹配除white空格符以外的一個單個的字符,等價于[^ fnrtv]。
    例如:/S/w*匹配"foo bar."中的'foo'。

    字符t
    意義:匹配一個制表符

    字符v
    意義:匹配一個頂頭制表符

    字符w
    意義:匹配所有的數字和字母以及下劃線,等價于[A-Za-z0-9_]。
    例如:/w/匹配"apple,"中的'a',"$5.28,"中的'5'和"3D."中的'3'。

    字符W
    意義:匹配除數字、字母外及下劃線外的其它字符,等價于[^A-Za-z0-9_]。
    例如:/W/或者/[^$A-Za-z0-9_]/匹配"50%."中的'%'。

    字符n
    意義:這里的n是一個正整數。匹配一個正則表達式的最后一個子串的n的值(計數左圓括號)。

    例如:/apple(,)sorange1/匹配"apple, orange, cherry, peach."中的'apple, orange',下面
有一個更加完整的例子。
    注意:如果左圓括號中的數字比n指定的數字還小,則n取下一行的八進制escape作為描述。

    字符ooctal和xhex
    意義:這里的ooctal是一個八進制的escape值,而xhex是一個十六進制的escape值,允許在一個
正則表達式中嵌入ASCII碼。


    當表達式被檢查的時候,文字符號提供了編輯正則表達式的方法。利用文字符號可以使到正則表達
式保持為常數。例如,如果你在一個循環中使用文字符號來構造一個正則表達式,正則表達式不需進行
反復編譯。
    正則表達式對象構造器,例如,new RegExp("ab+c"),提供正則表達式的運行時編譯。當你知道正
則表達式的模式會變化的時候,應該使用構造函數,或者你不知道正則表達式的模式,而它們是從另外
的源獲得的時候,比如由用戶輸入時。一旦你定義好了正則表達式,該正則表達式可在任何地方使用,
并且可以改變,你可以使用編譯方法來編譯一個新的正則表達式以便重新使用。
    一個分離預先定義的RegExp對象可以在每個窗口中使用;也就是說,每個分離的JavaScript線程運
行以獲得自己的RegExp對象。因為每個腳本在一個線程中是不可中斷的,這就確保了不同的腳本不會覆
蓋RegExp對象的值。
    預定義的RegExp對象包含的靜態屬性:input, multiline, lastMatch,lastParen, leftContext,
rightContext, 以及從$1到$9。input和multiline屬性能被預設。其它靜態屬性的值是在執行個別正則
表達式對象的exec和test方法后,且在執行字符串的match和replace方法后設置的。

    屬性
    注意RegExp對象的幾個屬性既有長名字又有短名字(象Perl)。這些名字都是指向相同的值。Perl是
一種編程語言,而JavaScript模仿了它的正則表達式。

    屬性$1, ..., $9
    取得匹配的子串,如果有的話

    屬性$_
    參考input

    屬性$*
    參考multiline

    屬性$
    參考lastMatch

    屬性$+
    參考lastParen

    屬性$`
    參考leftContext

    屬性$'
    參考rightContext

    屬性constructor
    指定用來建立對象原型函

    屬性global
    決定是否測試正則表達式是否不能匹配所有的字符串,或者只是與最先的沖突。

    屬性ignoreCase
    決定試圖匹配字符串的時候是否忽略大小寫

    屬性input
    當正則表達式被匹配的時候,為相反的字符串。

    屬性lastIndex
    決定下一次匹配從那里開始

    屬性lastMatch
    最后一個匹配的字符

    屬性lastParen
    子串匹配的時候,最后一個parenthesized,如果有的話。

    屬性leftContext
    最近一次匹配前的子串。

    屬性multiline
    是否在串的多行中搜索。

    屬性prototype
    允許附加屬性到所有的對象

    屬性rightContext
    最近一次匹配后的的子串。

    屬性source
    模式文本





    方法
    compile方法
    編譯一個正則表達式對象

    exec方法
    運行正則表達式匹配

    test方法
    測試正則達式匹配

    toSource方法
    返回一個對象的文字描述指定的對象;你可以使用這個值來建立一個新的對象。不考慮Object.toS
ource方法。

    toString方法
    返回一個字符串描述指定的對象,不考慮Object.toString對象。

    valueOf方法
    返回指定對角的原始值。不考慮Object.valueOf方法。

 另外,這個對象繼承了對象的watch和unwatch方法




  例子:
  例1、下述示例腳本使用replace方法來轉換串中的單詞。在替換的文本中,腳本使用全局 RegExp
對象的$1和$2屬性的值。注意,在作為第二個參數傳遞給replace方法的時候,RegExp對象的$屬性的名
稱。
    SCRIPT LANGUAGE="JavaScript1.2">
    re = /(w+)s(w+)/;
    str = "John Smith";
    newstr=str.replace(re,"$2, $1");
    document.write(newstr)
    /SCRIPT>
    顯示結果:"Smith, John".

  例2、下述示例腳本中,RegExp.input由Change事件處理句柄設置。在getInfo函數中,exec 方法
使用RegExp.input的值作為它的參數,注意RegExp預置了$屬性。

   
    SCRIPT LANGUAGE="JavaScript1.2">
    function getInfo(abc)
    {
    re = /(w+)s(d+)/;
    re.exec(abc.value);
    window.alert(RegExp.$1 + ", your age is " + RegExp.$2);
    }
    /SCRIPT>

  請輸入你的姓和年齡,輸入完后按回車鍵。
  FORM>INPUT TYPE="TEXT" NAME="NameAge" onChange="getInfo(this);">/FORM>
  /HTML>


    $1, ..., $9屬性
    用圓括號括著的匹配子串,如果有的話。
    是RegExp的屬性
    靜態,只讀

    在JavaScript 1.2, NES 3.0以上版本提供
    描述:因為input是靜態屬性,不是個別正則表達式對象的屬性。你可以使用RegExp.input 訪問該
屬性。

    能加上圓括號的子串的數量不受限制,但正則表達式對象只能保留最后9 條。如果你要訪問所有的
圓括號內的匹配字串,你可以使用返回的數組。

    這些屬性能用在RegExp.replace方法替換后的字符串(輸出結果)。當使用這種方式的時候,不用預
先考慮RegExp對象。下面給出例子。當正則表達式中沒有包含圓括號的時候,該腳本解釋成$n的字面意
義。(這里的n是一個正整數)。


    例如:
    下例腳本使用replace 方法來交換串中單詞的位置。在替換后的文本字串中,腳本使用正則表達式
RegExp對象的$1和$2屬性的值。注意:當它們向replace方法傳遞參數的時候,這里沒有考慮 $ 屬性的
RegExp對象的名稱。
    SCRIPT LANGUAGE="JavaScript1.2">
    re = /(w+)s(w+)/;
    str = "John Smith";
    newstr=str.replace(re,"$2, $1");
    document.write(newstr)
    /SCRIPT>
    顯示的輸出結果為:Smith, John。
您可能感興趣的文章:
  • 用用outlook Express 由于服務器拒絕接受發件人的電子郵件地址,這封郵件無法發送
  • Sql server 2008 express遠程登錄實例設置 圖文教程
  • nodejs教程 安裝express及配置app.js文件的詳細步驟
  • DevExpress SplitContainerControl用法總結
  • DevExpress之TreeList用法實例總結
  • DevExpress之SplashScreen用法實例
  • SQL2005Express中導入ACCESS數據庫的兩種方法
  • DevExpress之ChartControl實現餅狀圖百分比演示實例
  • DevExpress之ChartControl實現柱狀圖演示實例
  • node+express+ejs制作簡單頁面上手指南
  • express的中間件bodyParser詳解
  • express的中間件cookieParser詳解
  • 在WIN7下安裝和配置SQL Server 2005 Express Edition(精簡版)
  • C#實現DevExpress本地化實例詳解
  • Express的路由詳解

標簽:海南 邯鄲 婁底 黔東 內江 德陽 樂山 衡陽

巨人網絡通訊聲明:本文標題《正則表達式regular expression詳述(一)》,本文關鍵詞  正則,表達式,regular,expression,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《正則表達式regular expression詳述(一)》相關的同類信息!
  • 本頁收集關于正則表達式regular expression詳述(一)的相關信息資訊供網民參考!
  • 推薦文章
    国产伦精品一区二区三区无广告| 免费毛片基地| 高清一级做a爱过程不卡视频| 香蕉视频久久| 毛片高清| 韩国三级一区| 亚洲天堂免费观看| 国产成人精品综合久久久| 韩国毛片免费| 国产一级强片在线观看| 国产精品自拍在线观看| 国产成人啪精品| 一级片片| 国产成人啪精品| 成人av在线播放| 日本在线www| 黄色福利| 精品在线免费播放| 韩国三级一区| 毛片成人永久免费视频| 欧美国产日韩精品| 韩国三级一区| 国产极品白嫩美女在线观看看| 日韩在线观看视频免费| 一级毛片视频免费| 国产麻豆精品hdvideoss| 日本免费区| 国产一区二区精品久久| 999久久狠狠免费精品| 国产伦久视频免费观看 视频| 精品国产三级a| 国产国产人免费视频成69堂| 久久精品免视看国产明星| 精品视频在线看 | 可以免费看污视频的网站| 黄色免费三级| 久草免费在线观看| 精品国产三级a| 欧美一级视频免费| 成人免费网站久久久| 一本高清在线| 美女免费黄网站| 91麻豆爱豆果冻天美星空| 国产91素人搭讪系列天堂| 欧美1区| 九九久久国产精品大片| 你懂的日韩| 国产a视频| 可以在线看黄的网站| 欧美激情一区二区三区中文字幕| 日本伦理片网站| 国产成人精品综合| 亚洲爆爽| 国产网站免费视频| 国产91丝袜高跟系列| 91麻豆精品国产片在线观看| 亚洲天堂免费| 999精品视频在线| 亚久久伊人精品青青草原2020| 韩国毛片基地| 久久久久久久网| 国产视频在线免费观看| 亚洲爆爽| 你懂的国产精品| 成人免费观看男女羞羞视频| 成人在免费观看视频国产| 青青久久精品| 久久国产影视免费精品| 日韩一级黄色片| 精品在线观看一区| 久久国产一久久高清| 免费国产在线视频| 日韩一级黄色大片| 精品国产香蕉在线播出| 国产成人精品综合在线| 麻豆网站在线看| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 国产91精品系列在线观看| 精品视频在线观看免费| 亚洲 国产精品 日韩| 成人高清视频在线观看| 日韩女人做爰大片| 久久国产精品只做精品| 国产不卡福利| 国产极品白嫩美女在线观看看| 精品视频免费观看| 国产福利免费观看| 一级片片| 青青久久网| 欧美电影免费| 国产伦精品一区三区视频| 欧美国产日韩精品| 欧美国产日韩精品| 精品视频在线观看视频免费视频| 午夜久久网| 国产麻豆精品免费密入口| 青青青草视频在线观看| 亚洲女初尝黑人巨高清在线观看| 四虎久久影院| 久久国产精品自由自在| 午夜在线亚洲男人午在线| 国产网站免费观看| 九九免费高清在线观看视频 | 亚洲女初尝黑人巨高清在线观看| 日韩中文字幕一区二区不卡| 精品视频一区二区三区| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 成人免费高清视频| 日本伦理黄色大片在线观看网站| 国产成人精品综合久久久| 精品视频在线看| 999精品视频在线| 国产不卡在线看| 91麻豆高清国产在线播放| 国产不卡高清| 欧美激情在线精品video| 国产韩国精品一区二区三区| 在线观看成人网| 国产精品自拍在线| 午夜家庭影院| 精品在线观看一区| 麻豆网站在线看| 毛片高清| 亚洲www美色| 欧美18性精品| 九九久久国产精品| 中文字幕一区二区三区精彩视频| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 精品国产一级毛片| 美女免费毛片| 久草免费资源| 精品国产一区二区三区精东影业 | 日韩av成人| 亚洲第一色在线| 一级女性全黄久久生活片| 91麻豆国产福利精品| 黄视频网站免费| 精品视频免费观看| 999久久久免费精品国产牛牛| 精品在线免费播放| 欧美一级视| 91麻豆国产福利精品| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 国产伦精品一区二区三区无广告 | 青青久热| 国产伦精品一区二区三区无广告| 国产网站免费| 国产网站免费观看| 999精品影视在线观看| 999久久狠狠免费精品| 四虎影视库| 香蕉视频亚洲一级| 欧美激情中文字幕一区二区| 国产高清在线精品一区a| 国产精品自拍在线观看| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 99色视频在线| 中文字幕一区二区三区精彩视频| 国产成人精品综合久久久| 日本免费看视频| 免费国产在线视频| 国产一区二区精品久久91| 韩国毛片免费大片| 久久精品店| 国产网站免费视频| 午夜在线亚洲男人午在线| 国产a视频| 在线观看成人网| 日韩中文字幕一区二区不卡| 999精品影视在线观看| 午夜在线亚洲| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 四虎影视久久久| 成人免费网站视频ww| 香蕉视频一级| 日韩在线观看免费完整版视频| 美女免费毛片| 亚洲wwwwww| 九九久久99| 麻豆午夜视频| 四虎影视久久久| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 天天色色色| 天天做日日爱| 毛片高清| 国产伦精品一区二区三区在线观看| 国产不卡在线看| 韩国三级视频网站| 欧美18性精品| 韩国三级视频网站| 国产视频一区在线| 韩国毛片| 日韩av东京社区男人的天堂| 四虎论坛| 日本在线不卡免费视频一区| 国产91素人搭讪系列天堂| 成人高清免费| 日韩av成人| 夜夜操网| 黄视频网站免费观看|