Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Giải thích Character Classes trong Java Regular Expressions


Character Class cơ bản

Định nghĩa bằng [], khớp một ký tự từ tập chỉ định.

  • [abc] - a, b, hoặc c
  • [a-z] - chữ thường a-z

Các biến thể

1. Negation (Phủ định) - [^ ]

Khớp ký tự không thuộc tập.

  • [^abc] - trừ a, b, c
  • [^a-z] - trừ chữ thường

2. Range (Phạm vi) - [a-z]

Dải ký tự liên tiếp.

  • [A-Z] - chữ hoa
  • [0-9] - chữ số

3. Union (Hợp) - [a-z[0-9]]

Khớp ký tự thuộc ít nhất một phạm vi.

  • [a-z[0-9]] - chữ thường hoặc số
  • [A-Z[a-z]] - chữ hoa hoặc thường

4. Intersection (Giao) - [a-z&&[r-u]]

Khớp ký tự thuộc cả hai phạm vi (giao nhau).

  • [a-z&&[r-u]] = [r-u]
  • [0-9&&[2-5]] = [2-5]

5. Subtraction (Trừ) - [a-l&&[^e-h]]

Trừ một phạm vi khỏi phạm vi khác (kết hợp negation + intersection).

  • [a-l&&[^e-h]] = a,b,c,d,i,j,k,l (trừ e,f,g,h)

Bảng tóm tắt

Biến thểCú phápVí dụ
Basic[abc]a,b,c
Range[a-z]a..z
Negation[^a-z]Không a..z
Union[a-z[0-9]]a..z hoặc 0..9
Intersection[a-z&&[m-p]]m..p
Subtraction[a-z&&[^m-p]]a..z trừ m..p