Java中的正規表示式

2021-09-22 01:33:22 字數 1484 閱讀 6787

是指乙個用來描述或者匹配一系列符合某個句法規則的字串的單個字串。其實就是一種規則。有自己特殊的應用。

正規表示式的組成規則

a:字元

x 字元 x。舉例:『a』表示字元a

\ 反斜線字元。

\n 新行(換行)符 (』\u000a』)

\r 回車符 (』\u000d』)

b:字元類

[abc] a、b 或 c(簡單類)

[^abc] 任何字元,除了 a、b 或 c(否定)

[a-za-z] a到 z 或 a到 z,兩頭的字母包括在內(範圍)

[0-9] 0到9的字元都包括

c:預定義字元類

. 任何字元。我的就是.字元本身,怎麼表示呢? .

\d 數字:[0-9]

\w 單詞字元:[a-za-z_0-9]

在正規表示式裡面組成單詞的東西必須有這些東西組成

d:邊界匹配器

^ 行的開頭

$ 行的結尾

\b 單詞邊界

就是不是單詞字元的地方。

e:greedy 數量詞

x? x,一次或一次也沒有 比如""空串 就是沒有

x* x,零次或多次 大於等於1次 都算多次

x+ x,一次或多次

x x,恰好 n 次

x x,至少 n 次

x x,至少 n 次,但是不超過 m 次

public class mytest2 

//排序

arrays.sort(arr);

//遍歷int陣列拼串

stringbuilder sb = new stringbuilder();

for (int i = 0; i < arr.length; i++)

string string = sb.tostring().trim();

system.out.println(string);

}}

pattern和matcher

pattern: 乙個pattern是乙個正規表示式經編譯後的表現模式。

matcher: 乙個matcher物件是乙個狀態機器,它依據pattern物件做為匹配模式對字串展開匹配檢查。

案例演示

需求:獲取下面這個字串中由三個字元組成的單詞

da jia ting wo shuo, jin tian yao xia yu, bu shang wan zi xi, gao xing bu?

public class mytest2 \\b";

//獲取模式器

pattern p = pattern.compile(regx);

//獲取匹配器

matcher m = p.matcher(str);

while (m.find())

}}

java中的正規表示式

輸入一句話 如 ni,hao.wo 將其中的所有單詞都輸出出來。1.使用string的split方法 scanner scanner new scanner system.in string in scanner.nextline string words in.split b for int i ...

Java中的正規表示式

從jdk1.4開始,在string類中加入了matches 進行正則式的匹配,語法格式如下 boolean matches string regex regex為正則式,如果字串與正規表示式匹配則返回true,否則返回false。正規表示式的元字元如下圖所示 在正規表示式中,如果需要某一型別的字元多...

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 回...