itVincent Blog - Java Working Fun!

          技術引領時代!
          posts - 117, comments - 181, trackbacks - 0, articles - 12

          正則表達式筆記

          Posted on 2006-10-26 09:57 itVincent 閱讀(438) 評論(0)  編輯  收藏

          正則表達式筆記

          1.[] 與 ()的區別

          [a-zA-Z0-9] 在包含的字符中 , 匹配其中一個 , 可匹配 ”!a!”

          (abc) 在包含的字符中 , 都要逐一匹配 , 而且有順序 , 其實就是說 ,() 里面就是一個字正則式 ,

          可匹配 ”3abc93”

          2. 表達式之間千萬不能有空格

          ?

          .構造檢查 email的正則表達式

          /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/

            在一個完整的 email 地址中有三個部分 :
             1. 用戶名 ( '@' 左邊的一切 ),
             2.'@',
             3. 服務器名 ( 就是剩下那部分 ).
            用戶名可以含有大小寫字母阿拉伯數字 , 句號 ('.'), 減號 ('-'), and 下劃線 ('_'). 服務器名字也是符合這個規則 , 當然下劃線除外 .

            現在 , 用戶名的開始和結束都不能是句點 . 服務器也是這樣 . 還有你不能有兩個連續的句點他們之間至少存在一個字符,好現在我們來看一下怎么為用戶名寫一個匹配模式 :

             /^[\w-]+$/

          ?

            現在還不能允許句號的存在 . 我們把它加上 :
             /^[\w-]+(\.[\w-]+) * $/

          ?

            上面的意思就是說 : " 以至少一個規范字符(除了 . )開頭 , 后面跟著 0 個或者多個 以點開始的字符串 ."

          ?

          ?????? 然后是后面一部分 , 在網上流傳的一種做法是 , 后面的一部分是跟前面那部分一樣的 , 但是我覺得有點不妥 , 難道 abc@abc 這樣也符合一個 email 地址格式嗎 ? 我試過不少的系統 , 都不允許這樣輸入的 , 必需要你輸入如 abc@abc.abc 這樣的格式才行.所以后面部分是略有不同的.

          ?????? \^[\w-]+(\.[w-]+) $\

          上面的意思就是說 : " 以至少一個規范字符(除了 . )開頭 , 后面跟著 1個或者多個 以點開始的字符串 ."

          ?

          . 現在只需要用 ”@” 把兩部分連接 :
             /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[w-]+)+$/

            這就是完整的 email 認證匹配模式了 , JS 中只需要調用

          reg = /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[w-]+)+$/;

          reg.exec(input);

          返回為 true, 就是說 input 是一個 email 地址 .


            通過這種方法就可以得到是否為 email , 有什么說得不對的 , 請各位指正 !

          ?

          ?

          ?

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


          網站導航:
           
          主站蜘蛛池模板: 嘉义县| 河东区| 探索| 高安市| 阿拉善左旗| 小金县| 扎赉特旗| 宁武县| 清徐县| 宁德市| 肇庆市| 贵州省| 神木县| 大荔县| 临夏县| 峨山| 礼泉县| 揭东县| 海丰县| 灵川县| 中山市| 东乡县| 高尔夫| 灌阳县| 高阳县| 鹤峰县| 逊克县| 龙里县| 和林格尔县| 广元市| 连南| 萝北县| 广昌县| 丹巴县| 伊宁县| 高雄市| 西贡区| 柯坪县| 五家渠市| 乌海市| 苗栗县|