java中正则表达式实例详解
Java中正则表达式运用实例(参看java中正则表达式运用详解):
测试代码
packagetest; /** *在String的matches()方法,split()方法中使用正则表达式. *@authorfhd001 */ publicclassRegexTest{ publicstaticvoidmain(String[]args){ /* *普通字符 */ Stringstr1="abc45abc345"; String[]arr1=str1.split("abc"); for(Stringstring:arr1){ System.out.print(string+"-->"); } System.out.println(); /* *简单的转义字符 *在java中转义字符时一定要用双反斜线,两个斜线转义成一个斜线, *在用这个斜线字符转义那些特殊字符. */ Stringstr2="^$()[]{}.?+*|"; booleanflag=str2.matches("//^//$//(//)//[//]//{//}//.//?//+//*//|"); System.out.println(flag); /* *转义字符/Q.../E. */ Stringstr3="^$()[]{}.?+*|99999"; booleanflag2=str3.matches("//Q^$()[]{}.?+*|//E//d{5}"); System.out.println(flag2); /* *字符集合 */ Stringstr4="dfddri334"; booleanflag4=str4.matches(".+"); System.out.println(flag4); Stringstr5="#$%^*())%"; booleanflag5=str5.matches("//W{9}"); System.out.println(flag5); Stringstr6="4gffmdkekrhhr"; booleanflag6=str6.matches("//w+"); System.out.println(flag6); Stringstr7="fjfdkeeett"; booleanflag7=str7.matches("//w+//s+//w{4}//s?"); System.out.println(flag7); Stringstr8="erefff"; booleanflag8=str8.matches("//s+//S+//s+"); System.out.println(flag8); Stringstr9="456776888"; booleanflag9=str9.matches("//d+"); System.out.println(flag9); Stringstr10="rtydfgrgwvr"; booleanflag10=str10.matches("//D+"); System.out.println(flag10); /* *自定义字符集合[] */ Stringstr11="fdfeetg34566"; booleanflag11=str11.matches("[fdetg]+//s+[3-6]+"); System.out.println(flag11); Stringstr12="rtyuie5768"; booleanflag12=str12.matches("[^abcdf]+//s+[^1234]+"); System.out.println(flag12); /* *匹配次数限定符 */ //贪婪模式 Stringstr13="ytreggcv454444444333"; booleanflag13=str13.matches("//w{20}"); System.out.println(flag13); booleanflag14=str13.matches("//w{10,21}"); System.out.println(flag14); booleanflag15=str13.matches("//w{18,}"); System.out.println(flag15); Stringstr14="4"; booleanflag16=str14.matches("//d?"); System.out.println(flag16); Stringstr15="ddcvgt"; booleanflag17=str15.matches("//D+//d?"); System.out.println(flag17); Stringstr16="e33tf44t44t"; booleanflag18=str16.matches("//w+//W*"); System.out.println(flag18); //勉强模式(只举一例) Stringstr17="34567ghjkkld"; booleanflag19=str17.matches("//d{2,7}?//w{8,11}"); System.out.println(flag19); //占有模式(只举一例) Stringstr18="22222ddddd"; booleanflag20=str18.matches("//d{2,5}+//w{6}"); System.out.println(flag20); /* *字符边界 */ Stringstr19="a444545rot44tm"; booleanflag21=str19.matches("^a//w+m$"); System.out.println(flag21); /* *选择表达式xxx|xxx */ Stringstr20="abc123abc"; booleanflag22=str20.matches("(abc|123){3}"); System.out.println(flag22); /* *分组(). *以上修饰符都是针对一个字符进行修饰.如果要对一组字符进行 *修饰就要用到() */ Stringstr21="123qwe123qwe"; booleanflag23=str21.matches("(123qwe){2}"); System.out.println(flag23); /* *[]中的交集与并集 */ Stringstr22="abcdefgh1234567"; booleanflag24=str22.matches("[a-z1-9]+");//并集 System.out.println(flag24); booleanflag25=str22.matches("[a-z1-9&&[a-h1-7]]+");//交集 System.out.println(flag25); } }
结果代码
-->45-->345--> true true true true true true true true true true true true true true true true true true false true true true true true
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!