<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 15, comments - 6, trackbacks - 0, articles - 0
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    JavaScript Regular Expression

    Posted on 2008-01-23 23:32 thomas.chen 閱讀(411) 評論(0)  編輯  收藏 所屬分類: JavaScript
     

    1.        基礎

    1.1.      簡介

    正則表達式就是由普通字符(例如字符 a z)以及元字符組成的文字模式。該模式描述在查找文字主體時待匹配的一個或多個字符串。正則表達式作為一個模板,將某個字符模式與所搜索的字符串進行匹配。所以她是一種可以用于模式匹配替換的強有力的工具。

    其作用如下:

    u       測試字符串的是否符合某個模式。例如,可以對一個輸入字符串進行測試,看在該字符串是否存在一個電話號碼模式或一個信用卡號碼模式。這稱為數據有效性驗證。

    u       替換文本。可以在文檔中使用一個正則表達式來標識特定文字,然后可以全部將其刪除,或者替換為別的文字。

    1.2.      基本語法

    正則表達式由兩類字符組成:元字符 metacharacter)和字符。所謂元字符是指那些在正則表達式中具有特殊意義的專用字符,可以用來規(guī)定其前導字符(即位于元字符前面的字符)在目標對象中的出現模式。請看一個簡單的JavaScript正則表達式的例子:

    /^jim{2,6}/

    該表達式應該念成:匹配某字符串,該字符串由j開始,后面緊跟i,接著跟著m,其中m必須出現最少2次,最多6次。所以該表達式可以匹配:jimmm , jimmmmmm,但是不可以匹配jim。這里:

    “/” …”/” :表示JavaScript正則表達定義的開始和結束。

    ^        :匹配輸入字符串的開始位置

    {2,6}     :最少匹配 n 次且最多匹配 m

    這里^,{2,6}就是正則表達式的元字符

    1.3.      JavaScript正則表達式的元字符

    1.3.1.      Character Classes

    用來匹配字符串中特定的字符

    字符

    匹配

    例子

    […]

    匹配方括號里面的任何一個字符

    [a-z]:表示匹配az的任何一個小寫字符

    g[ae]y:表示可以匹配gay或者gey,但是不可以匹配gaey

    [^…]

    不可以匹配方括號里面的任何一個字符

    [^a-z]:表示不可以匹配az的任何一個小寫字符

    "\w

    匹配任何一個單詞字符。等價于[a-zA-Z0-9_]

     

    "\W

    匹配任何一個單詞字符。等價于[^a-zA-Z0-9_]

     

    "\d

    匹配任何一個單詞數字。等價于[0-9]

    /^[1-9]\d*$/表示匹配以19中任何一個數字為開始,后面跟著任意多個(0或者多個)數字的字符串。即正整數

    "\D

    匹配任何一個單詞數字。等價于[^0-9]

     

    "\s

    匹配任何空白字符。

     

    "\S

    匹配任何非空白字符

     

     

     

    1.3.2.      Repetition Characters

    用來定義其前導部分重復出現的次數

    字符

    匹配

    例子

    {n,m}

    表示其前導部分連續(xù)最少出現n次,最多出現m

    注意在逗號和兩個數之間不能有空格。n,m是一個非負整數

    o{1,3}: 將匹配 "fooooood" 中的前三個 o

    {n}

    表示其前導部分連續(xù)出現n

    n 是一個非負整數

    o{2}: 不能匹配 "Bob" 中的 'o',但是能匹配 "food" 中的兩個 o

    {n,}

    表示其前導部分連續(xù)最少出現n

    n 是一個非負整數

     

    +

    表示其前導部分連續(xù)最少出現1次,等價于{1,}

     

    *

    表示其前導部分連續(xù)最少出現0次,即出現0次,或者多次。等價于{0,}

     

    表示其前導部分連續(xù)可以出現0次,或者1次。等價于{0,1}

    /"w{3}"d?/ : 表示匹配3個單詞字符和一個可選數字

    1.3.3.      Anchor Characters

    ...待續(xù)


    只有注冊用戶登錄后才能發(fā)表評論。


    網站導航:
    博客園   IT新聞   Chat2DB   C++博客   博問  
     
    主站蜘蛛池模板: 亚洲精品成人在线| 全亚洲最新黄色特级网站| 亚洲精品无码mv在线观看网站| 亚洲七久久之综合七久久| 免费做爰猛烈吃奶摸视频在线观看 | 亚洲AV无码一区二区三区DV| 中国videos性高清免费| 国产亚洲视频在线播放| 三级黄色片免费看| 亚洲av一综合av一区| 久久免费看少妇高潮V片特黄| 亚洲一区二区三区日本久久九| 24小时日本韩国高清免费| 亚洲精品456在线播放| 国产人在线成免费视频| 亚洲精品成a人在线观看夫| 国产在线不卡免费播放| 一区二区三区免费在线视频 | 免费A级毛片在线播放不收费| 免费国产va在线观看| 亚洲熟妇无码乱子AV电影| 久久狠狠躁免费观看| 亚洲人成伊人成综合网久久| 免费看国产成年无码AV片| 黄色免费在线观看网址| 国产成人精品曰本亚洲79ren| 久久青草91免费观看| 国产成人精品日本亚洲11| heyzo亚洲精品日韩| 久久精品无码精品免费专区| 亚洲国产精品久久网午夜| 在线视频免费国产成人| 中文字幕在线免费视频| 亚洲国产视频网站| 四虎在线播放免费永久视频| 麻豆精品成人免费国产片| 亚洲乱码在线观看| 亚洲精品无码专区久久久| 久久精品网站免费观看| 一级毛片免费在线| 亚洲videos|