java正則表達和反射

2021-06-26 10:37:09 字數 1803 閱讀 4545

正規表示式(理解)

(1)正規表示式:就是符合一定規則的字串。

(2)正規表示式的特殊字元:

a:字元

x 字元x(舉例:a,b,c)

\\ 反斜線字元

\t 製表符 ('\u0009')

\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]

\d 非數字: [^0-9]

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

注意:單詞只包含這些。

\w 非單詞字元:[^\w]

d:邊界匹配器

^ 行的開頭

$ 行的結尾

\b 單詞邊界

表示這裡不能是乙個單詞。

e:數量詞

x? x,一次或一次也沒有

x* x,零次或多次

x+ x,一次或多次

x x,恰好 n 次

x x,至少 n 次

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

f:((a)(b(c)))

組:是以(開始計算,直到對應的),從1開始編號。

第一組:(a)(b(c))

第二組:a

第三組:b(c)

第四組:c

組零始終代表整個表示式。

(3)正規表示式的功能:

a:匹配功能

public boolean matches(string regex)

b:切割功能

public string split(string regex)

c:替換功能

public string replaceall(string regex,string replacement)

d:獲取功能

使用的是正則物件pattern和匹配器matcher

把正規表示式生成乙個模式物件

pattern p = pattern.compile("a*b");

// 通過模式物件接收字串得到乙個匹配器物件

matcher m = p.matcher("aaaaab");

m.find()

// 呼叫匹配器物件的功能進行判斷

boolean b = m.matches();

system.out.println(b);

m.find()查詢

m.group()返回匹配序列

(4)案例:(理解)

a:驗證郵箱

b:我要學程式設計

c:獲取文字檔案中的所有郵箱

反射(理解)

(1)反射:通過類或者執行時的物件,去獲取該類中的所有成員並使用。

(2)獲取class檔案物件(位元組碼檔案物件)

a:object類中的getclass()

b:資料型別的靜態class屬性

c:class類中的靜態方法forname()

(3)反射的使用

a:獲取構造方法並使用

b:獲取成員變數並使用

c:獲取成員方法並使用

(4)案例(理解)

a:通過反射建立類的物件

b:通過反射修改類的成員變數的值

c:通過反射使用類中的方法

d:執行配置檔案中類及其方法

e:如何取消泛型的限制

正規表示式和反射

1 什麼是正規表示式?就是對你想要操作的字串指定操作格式。2 為什麼要用它?簡化對字串的操作。3 如何用它?實際上就是對字串函式裡面傳指定規則的正規表示式。匹配 利用matches 正規表示式 切割 split 正規表示式 替代 replaceall 正規表示式 獲取 1,獲取pattern類例項 ...

java 正則表達

1.驗證身份證 public static boolean checkidentitycard string identity card 19 20 02468 048 13579 26 0229 20 0 9 0 9 19 0 9 0 9 0 1 9 1 0 2 0 1 9 1 d 2 0 8 0...

反射和正則基礎

一 反射 a 通過反射可以動態地建立物件 賦值或者呼叫方法。mvc ef等各種框架都會用到反射,還有vs的智慧型感知 監視功能也利用了反射。反射的基礎類為type,每個類對應乙個type物件,每個方法 屬性分別對應methodinfo和propertyinfo物件,這些就是類 方法 屬性的元資料 m...