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

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

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

    拼搏的人生

    拼搏在繁華的都市

      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      7 隨筆 :: 13 文章 :: 6 評(píng)論 :: 0 Trackbacks

    在新的JDK中加入了對(duì)使用正則表達(dá)式的模式匹配的支持。正則表達(dá)式是根據(jù)文本匹配模式的方法-類似于編譯器生成類文件的工作原理。
    在正則表達(dá)式的上下文中,模式是序列的文本表示方法。例如,我們想知道一個(gè)字符序列中是否存在"money"這個(gè)詞,就可以使用模式money,
    因?yàn)檫@是精確表示該字符串的方法。
    ?? 我們這樣來檢驗(yàn)用戶輸入的是否為一合法的email地址:
    Code:
    import java.util.regex.Pattern;
    import java.util.regex.Matcher;

    public class TestRegex
    {
    ?public boolean isEmail(String email)
    ?{
    ???????????? //指定使用的模式
    ??Pattern pattern=Pattern.compile
    ??????????? ("\\p{Digit}+@\\w+\\.\\p{Alpha}{2,3}");
    ??String[] words=pattern.split(email);
    ??Matcher matcher=pattern.matcher(email);
    ??if(matcher.find()&&words.length==0)
    ??? return true;
    ??else
    ??? return false;
    ?}
    }
    來看怎么用它:
    Code:
    public class Client
    {
    ?public static void main(String[] args)
    ?{
    ??TestRegex regex=new TestRegex();
    ??String s1="DuYang163@gmail.com";
    ??String s2="feiyang@126.123.com";
    ??System.out.println(s1+(regex.isEmail(s1)?"是":"不是")+"Email格式!");
    ??System.out.println(s2+(regex.isEmail(s2)?"是":"不是")+"Email格式!");
    ?}
    }
    一些常用的表達(dá)式格式:
    文字(Literal): 表達(dá)式內(nèi)任何不具有特殊意義的字符都被看做是一個(gè)文字,并與自身匹配。
    量詞(Quantifier): 某些字符或者表達(dá)式,他們被用來計(jì)算一個(gè)文字或分組可以字符列中出現(xiàn)的次數(shù),以便該序列與表達(dá)式匹配。
    例:
    ? 表示出現(xiàn)一次或根本不出現(xiàn)。
    * 表示出現(xiàn)零次或一次以上(含一次)。
    + 表示出現(xiàn)一次或多次。
    字符類(Character class): 一個(gè)字符類就是方括號(hào)內(nèi)的一個(gè)字符集,其中,匹配可以是括號(hào)內(nèi)的任意一個(gè)字符。可以把字符和量詞結(jié)合起來,例如,[acegikmoqsuwy*]
    ??????????????????????? 將是只包含字母表中奇數(shù)字母的任意字符列。某些字符列是預(yù)先定義好的:
    \d-數(shù)字(0到9)
    \D-非數(shù)字
    \s-空白字符,如制表符或換行符
    \S-非空白字符
    \w-單字符(a到z,A到Z,0到9以及下劃線)
    \W-非單字字符(其他任意字符)
    Posix 字符類(Posix character class): 某些字符僅在用于US-ASCII比較時(shí)才有效。
    例如:
    \p{Lower}-小寫字符
    \p{Upper}-大寫字符
    \p{ASCII}-所有ASCII字符
    \p{Alpha}-字符字符(\p{Lower}與\p{Upper}相結(jié)合)
    \p{Digit}-從0到9的數(shù)字
    \p{Alnum}-字母數(shù)字字符
    范圍(Range): 使用短線(dash)來指定范圍。例如:[A-J]表示從A到J的大寫字母。
    否定(Negation): 使用脫字符^表示否定字符。例如:[^A-K]表示除A到K之外的任何字符。

    posted on 2006-05-05 08:04 Dalston.Young 閱讀(235) 評(píng)論(1)  編輯  收藏 所屬分類: Java Core

    評(píng)論

    # re: 正則表達(dá)式小談 2006-06-23 04:59 sdfsdaf@##
    @#@#@#@#@###  回復(fù)  更多評(píng)論
      


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


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 无码国产精品一区二区免费模式| 中文字幕免费在线看线人动作大片 | 爱情岛亚洲论坛在线观看 | 婷婷精品国产亚洲AV麻豆不片| 中国好声音第二季免费播放| 国产亚洲午夜高清国产拍精品| 在线亚洲v日韩v| 亚洲国产免费综合| 成人嫩草影院免费观看| 在线观看亚洲专区| 麻豆亚洲AV成人无码久久精品 | 亚洲成AV人片在线观看ww| 国产免费MV大全视频网站| 亚洲AV无码精品色午夜在线观看| 免费黄色电影在线观看| 久久亚洲精品无码VA大香大香| 台湾一级毛片永久免费| 亚洲AV无码专区在线电影成人 | 亚洲欧洲无卡二区视頻| 免费一级毛片不卡不收费| 一区二区三区免费精品视频| 国产亚洲综合色就色| 日本zzzzwww大片免费| 亚洲欧洲免费无码| 丁香五月亚洲综合深深爱| 亚洲精品免费在线观看| 亚洲精品欧美综合四区| 亚洲视频在线免费| 一区二区免费视频| 亚洲精品无码少妇30P| 亚洲一区无码精品色| 最近2019免费中文字幕6| 久久亚洲欧美国产精品| 国产亚洲精品国产| 好爽…又高潮了免费毛片| 四虎永久在线精品免费一区二区| 亚洲ⅴ国产v天堂a无码二区| 在线观看国产情趣免费视频| 三级黄色在线免费观看| 亚洲一区二区观看播放| 亚洲日韩精品无码一区二区三区|