正規表示式對字串的常見操作
其實使用的就是string類中的matches方法
stringtel = "1232131212";
stringregex = "1[358][0-9]"//"1[358]\\d"
booleanb = tel.matches(regex);
其實使用的就是string類中的split()方法
stringstr = "ads sd s sd";
stringname = str.split(" +");用乙個或者多個空格進行切割
"\\."第乙個\轉義第二個\第二個\轉義.
"(.)\\1+" zhangtttkkad
使用()來表示組,表示第一組是任意字元,然後第二位和第一組相同
並且第二位使用轉義字元,然後最少一次
其實使用的就是string類中的replaceall()方法
stringstr = "adsdfsddddasadfd";
str= str.replaceall("(.)\\1+","$1");
使用$符號來表示第二個引數使用的是第乙個正規表示式中的第一組
stringstr = "1230000123";
str= str.replaceall("(\\d)\\d(\\d)","$1****$2");
第一組和第二組保持一致,中間替換
將正則規則進行物件的封裝
patternp = pattern.compile("a*b");
通過正則物件的matcher方法和字串關聯,獲取要對字串操作的匹配物件matcher
matcherm = p.matcher("aaaab");
通過matcher匹配器物件的方法對字串進行操作
booleanb = m.matches();
獲取三個字母的單詞
stringstr = "duan wujie bu fang jia!";
stringregex = "\\b[a-z]\\b" \\b是字元邊界
將正則封裝成物件
patternp = pattern.compile(regex);
通過正則物件獲取匹配物件
matcherm = p.matcher(str);
while(m.find())
**口吃: 1.
我我.我...我要要要...要要學學學..學習習...習習習編編編.....編編程式設計程程....程程
publicstatic void test_1()
2.對ip位址排序
stringstr_ip = "192.168.1.1 1.1.1.1 33.4.5.6";
str_ip= str_ip.replaceall("(\\d+)","00$1");
str_ip= str_ip.replaceall("0*(\\d)","$1");
stringips = str_ip.split(" +");
treesetts = new treeset();
for(stingip:ips)
for(stingip:ts)
3.對郵件位址校驗
stringregex = "\\w+@\\w+(\\.\\w+)+";
網頁爬蟲
privatestatic listgetmailsbyweb() throws ioexception }
returnlist; }
正規表示式 正規表示式 總結
非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...
正規表示式 表示式
網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 interneturl a za z s 或 http w w w 手機號碼 13 0 9 14 5 7 15 0 1 2 3 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 號碼 x x x...
Linux正規表示式 編寫正規表示式
為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...