您好,登錄后才能下訂單哦!
正則表達式如何在java中使用?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
Java中正則表達式運用實例(參看java中正則表達式運用詳解):
測試代碼
package test; /** * 在String的matches()方法,split()方法中使用正則表達式. * @author fhd001 */ public class RegexTest { public static void main(String[] args) { /* * 普通字符 */ String str1 = "abc45abc345"; String[]arr1 = str1.split("abc"); for (String string : arr1) { System.out.print(string+"-->"); } System.out.println(); /* * 簡單的轉義字符 * 在java中轉義字符時一定要用雙反斜線,兩個斜線轉義成一個斜線, * 在用這個斜線字符轉義那些特殊字符. */ String str2 = "^$()[]{}.?+*|"; boolean flag = str2.matches("//^//$//(//)//[//]//{//}//.//?//+//*//|"); System.out.println(flag); /* * 轉義字符 /Q.../E. */ String str3 = "^$()[]{}.?+*|99999"; boolean flag2 = str3.matches("//Q^$()[]{}.?+*|//E//d{5}"); System.out.println(flag2); /* * 字符集合 */ String str4 = "dfddri334"; boolean flag4 = str4.matches(".+"); System.out.println(flag4); String str5 = "#$%^*())%"; boolean flag5 = str5.matches("//W{9}"); System.out.println(flag5); String str6 = "4gffmdkekrhhr"; boolean flag6 = str6.matches("//w+"); System.out.println(flag6); String str7 = "fjfdke eett "; boolean flag7 = str7.matches("//w+//s+//w{4}//s?"); System.out.println(flag7); String str8 = " erefff "; boolean flag8 = str8.matches("//s+//S+//s+"); System.out.println(flag8); String str9 = "456776888"; boolean flag9 = str9.matches("//d+"); System.out.println(flag9); String str10 = "rtydfgrgwvr "; boolean flag10 = str10.matches("//D+"); System.out.println(flag10); /* * 自定義字符集合 [ ] */ String str11 = "fdfeetg 34566"; boolean flag11 = str11.matches("[fdetg]+//s+[3-6]+"); System.out.println(flag11); String str12 = "rtyuie 5768"; boolean flag12 = str12.matches("[^abcdf]+//s+[^1234]+"); System.out.println(flag12); /* * 匹配次數限定符 */ //貪婪模式 String str13 = "ytreggcv454444444333"; boolean flag13 = str13.matches("//w{20}"); System.out.println(flag13); boolean flag14 = str13.matches("//w{10,21}"); System.out.println(flag14); boolean flag15 = str13.matches("//w{18,}"); System.out.println(flag15); String str14 = "4"; boolean flag16 = str14.matches("//d?"); System.out.println(flag16); String str15 = "ddcvgt"; boolean flag17 = str15.matches("//D+//d?"); System.out.println(flag17); String str16 = "e33tf44t44t"; boolean flag18 = str16.matches("//w+//W*"); System.out.println(flag18); //勉強模式(只舉一例) String str17 = "34567ghjkkld"; boolean flag19 = str17.matches("//d{2,7}?//w{8,11}"); System.out.println(flag19); //占有模式(只舉一例) String str18 = "22222ddddd"; boolean flag20 = str18.matches("//d{2,5}+//w{6}"); System.out.println(flag20); /* * 字符邊界 */ String str19 = "a444545rot44tm"; boolean flag21 = str19.matches("^a//w+m$"); System.out.println(flag21); /* * 選擇表達式 xxx | xxx */ String str20 = "abc123abc"; boolean flag22 = str20.matches("(abc|123){3}"); System.out.println(flag22); /* * 分組 ( ). * 以上修飾符都是針對一個字符進行修飾.如果要對一組字符進行 * 修飾就要用到() */ String str21 = "123qwe123qwe"; boolean flag23 = str21.matches("(123qwe){2}"); System.out.println(flag23); /* * []中的交集與并集 */ String str22 = "abcdefgh2234567"; boolean flag24 = str22.matches("[a-z1-9]+"); //并集 System.out.println(flag24); boolean flag25 = str22.matches("[a-z1-9&&[a-h2-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
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。