正規表示式pattern
:符合一定規則的表示式,
作用:用於專門操作字串。
特點:用於一些特定的符號來表示一些**操作,這樣就簡化書寫。
好處:可以簡化對字串的複雜操作。
弊端:福哈定義越多,正則越長 ,閱讀性越差。
具體操作功能:
1.匹配:
string matches
方法。用規則匹配整個字串,只要有一處不符合就返回
false
。string str = "b9";
string reg = "[bcd][0-9]";//定義正規表示式字串,匹配第乙個字元與第二個字元
boolean b = str.matches(reg);//返回結果為
true
2.切割
:string str = "zhangsan lisi wangwu zhaoliu";
string reg = " +";//匹配字元空格出現一次或多次
string arr = str.split(reg);//按照
reg的格式切割字串
string str = "asdfadddafddfeaggfadkk";
string reg = "(.)\\1+";//按照疊詞完成切割,為了讓規則的結果被重用
//可以講規則封裝成乙個組,用
()完成,組的出現都有編號,
//從1
開始,想要是用已有的組可以通過,
\n(n
就是租的編號
)的形式來獲取。
3.替換
replaceall(reg,newstr);//將符合正則規則的字串部分替換為
newstr
;replaceall("(.)\\1+","$1");//$1:代表前一組的字元。
4.獲取:將字串中符合規則的子串取出。
操作步驟:
1.將正規表示式封裝成物件
2.讓正則物件和要操作的字串相關聯
3.關聯後,獲取正則匹配引擎
4.通過引擎對符合規則的子串進行操作,比如取出。
class serverdemo
public static void getdemo()\\b";
//將規則封裝成物件。
pattern p = pattern.compile(reg);
//讓正則物件和要作用的字串相關聯,獲取匹配器物件。
matcher m = p.matcher(str);//其實
string
類中的matches
方法就是用的此物件中的
matches
方法。//將規則作用到字串上,並進行符合規則的子串查詢。
while(m.find())}}
練習1:
需求:將下列字串轉成:我要學程式設計。
思路:1.如果只想知道該字元是對是錯,使用匹配
2.想要將已有的字串變成另乙個字串,替換
3.想要哪找指定的方式將字串變成多個字串。切割,獲取規則以外的字串
4.想要拿到符合需求的字串子串,獲取。獲取符合規則的子串。
public static void test_1()
練習2:192.68.1.254 102.49.23.10 10.10.10.2 2.2.2.8 109.90.30.30
將ip位址進行位址段順序的排序。
還按照字串自然順序,只要讓他們每一段都是3
為即可。
1.按照每一段需要的最多的
0進行補齊,那麼每一段就會至少保證有3為
2.將每一段只保留
3為。這樣所有的
ip位址都是每一段3為。
public static void ipsort())","$1");//將每一段資料替換為每一段資料的後三位。也就是只保留後三位。
string arr = ip.split(" +");
//最後通過集合進行排序}
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的字串。你可以看見如果你沒有用我們提到的兩個字元 最後乙個例子 就是說 模...