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

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

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

    拼搏的人生

    拼搏在繁華的都市

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

    在新的JDK中加入了對(duì)使用正則表達(dá)式的模式匹配的支持。正則表達(dá)式是根據(jù)文本匹配模式的方法-類(lèi)似于編譯器生成類(lèi)文件的工作原理。
    在正則表達(dá)式的上下文中,模式是序列的文本表示方法。例如,我們想知道一個(gè)字符序列中是否存在"money"這個(gè)詞,就可以使用模式money,
    因?yàn)檫@是精確表示該字符串的方法。
    ?? 我們這樣來(lái)檢驗(yàn)用戶(hù)輸入的是否為一合法的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;
    ?}
    }
    來(lái)看怎么用它:
    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á)式,他們被用來(lái)計(jì)算一個(gè)文字或分組可以字符列中出現(xiàn)的次數(shù),以便該序列與表達(dá)式匹配。
    例:
    ? 表示出現(xiàn)一次或根本不出現(xiàn)。
    * 表示出現(xiàn)零次或一次以上(含一次)。
    + 表示出現(xiàn)一次或多次。
    字符類(lèi)(Character class): 一個(gè)字符類(lèi)就是方括號(hào)內(nèi)的一個(gè)字符集,其中,匹配可以是括號(hào)內(nèi)的任意一個(gè)字符。可以把字符和量詞結(jié)合起來(lái),例如,[acegikmoqsuwy*]
    ??????????????????????? 將是只包含字母表中奇數(shù)字母的任意字符列。某些字符列是預(yù)先定義好的:
    \d-數(shù)字(0到9)
    \D-非數(shù)字
    \s-空白字符,如制表符或換行符
    \S-非空白字符
    \w-單字符(a到z,A到Z,0到9以及下劃線(xiàn))
    \W-非單字字符(其他任意字符)
    Posix 字符類(lèi)(Posix character class): 某些字符僅在用于US-ASCII比較時(shí)才有效。
    例如:
    \p{Lower}-小寫(xiě)字符
    \p{Upper}-大寫(xiě)字符
    \p{ASCII}-所有ASCII字符
    \p{Alpha}-字符字符(\p{Lower}與\p{Upper}相結(jié)合)
    \p{Digit}-從0到9的數(shù)字
    \p{Alnum}-字母數(shù)字字符
    范圍(Range): 使用短線(xiàn)(dash)來(lái)指定范圍。例如:[A-J]表示從A到J的大寫(xiě)字母。
    否定(Negation): 使用脫字符^表示否定字符。例如:[^A-K]表示除A到K之外的任何字符。

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

    評(píng)論

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


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


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲资源在线观看| 亚洲爆乳无码专区www| 拍拍拍又黄又爽无挡视频免费| 亚洲色偷偷偷综合网| 亚洲国产婷婷综合在线精品| 免费人成黄页在线观看日本| 美女视频黄免费亚洲| 自拍偷自拍亚洲精品情侣| 美女被免费喷白浆视频| 国产99精品一区二区三区免费| 在线免费观看亚洲| 亚洲av午夜成人片精品电影| 无码国产精品一区二区免费模式| 亚洲日产乱码一二三区别| 亚洲国产成人片在线观看| 在线观看成人免费视频| 永久免费A∨片在线观看| 亚洲AV日韩AV永久无码色欲| 亚洲成人动漫在线| 亚洲av日韩av欧v在线天堂| 0588影视手机免费看片| 中国人免费观看高清在线观看二区 | 亚洲熟女综合一区二区三区| 亚洲一区二区三区无码中文字幕| 最近的免费中文字幕视频| 国产麻豆成人传媒免费观看| 羞羞视频网站免费入口| 亚洲一级毛片在线观| 亚洲av永久无码精品漫画| 亚洲国产午夜福利在线播放| 成人毛片免费网站| 久久www免费人成看片| a级毛片免费全部播放无码| 美女被爆羞羞网站免费| 亚洲第一永久在线观看| 亚洲av永久无码精品网站| 国产黄色一级毛片亚洲黄片大全| 成人免费无码大片a毛片| 91黑丝国产线观看免费| 午夜免费福利小电影| 中文字幕在线视频免费|