system.out.println(" ".matches(s)); //空格鍵(true)
system.out.println(" ".matches(s)); //tab鍵(true)
system.out.println(" ".matches(s)); //四個空格(false)
四個空格鍵相當於四個字元,雖然與tab鍵長度相同,結果卻不同
system.out.println(" ".matches(s)); //空格鍵(false)
system.out.println("a".matches(s)); //(true)
system.out.println("d".matches(s)); //這種情況不是表示一次也沒有,因為一次也沒有出翔是相對於字元a\b\c來說的
正規表示式的功能
string s = "應思月,李大芝,李曉明";
string st = s.replaceall(",","" );
system.out.println(st);結果為:應思月李大芝李曉明
string s = "wo1ai23423xi9you9293ji";
string st = s.replaceall("\\d", "");
system.out.println(st);//結果為:woaixiyouji
string r = "(.)\\1(.)\\2"; // (\\1表示第一組又出現一次,\\2表示第二組又出現一次)
system.out.println("快快樂樂".matches(r));//true
system.out.println("開開心心".matches(r));//true
system.out.println("不情不願".matches(r));//false
string s = "(..)\\1";
system.out.println("願意願意".matches(s));//true
system.out.println("不清不楚".matches(s));//false
例題(1)//a:切割
//需求:請按照疊詞切割: "sdqqfgkkkhjppppkl";
string s = "sdqqfgkkkhjppppkl";
string st = "(.)\\1+";
string stt = s.split(st);
for (int i = 0; i < stt.length; i++)
例題(2)/*b:替換
需求:我我....我...我.要...要要...要學....學學..學.編..編編.編.程.程.程..程
將字串還原成:「我要學程式設計」。*/
string s = "我我....我...我.要...要要...要學....學學..學.編..編編.編.程.程.程..程";
string s1 = s.replaceall("\\.", "");
string s2 = s1.replaceall("(.)\\1+", "$1");
system.out.println(s2);
string s = "我現在的手機號碼是17299283765,曾經我的手機號碼為18203988397,還有乙個手機號碼為13782938489";
string re = "1[3786]\\d";
pattern p = pattern.compile(re);
matcher m = p.matcher(s);
while (m.find())
執行結果
Java正規表示式
正規表示式結構簡介 字元 x 字元 x 反斜槓 0n 十進位制數 0 n 7 0nn 十進位制數 0nn 0 n 7 0mnn 十進位制數 0mnn 0 m 3,0 n 7 xhh 十六進製制數 0xhh uhhhh 十六進製制數 0xhhhh t 製表符 u0009 n 換行符 u000a r 回...
Java正規表示式
方便查詢的東西 基本語法 轉義字元 in d d d 數字0 9 多少到多少 d 非數字 0 9 非 w 單詞字元 a za z0 9 a3 w 非單詞字元 w s 空白 如 n t 0 1次 1 n次 0 n次 必須是n次 大於等於n次 n demo 中文 u0391 uffe5 英文 a za ...
Java正規表示式
舉例說明 the 開頭一定要有 the 字串 of despair 結尾一定要有 of despair 的字串 那麼,abc 就是要求以abc開頭和以abc結尾的字串,實際上是只有abc匹配。notice 匹配包含notice的字串。你可以看見如果你沒有用我們提到的兩個字元 最後乙個例子 就是說 模...