Tóm lược. trong hướng dẫn này, bạn tìm hiểu về bộ ký tự trong biểu thức chính quy bao gồm chữ số, từ, khoảng trắng và dấu chấm [. ]
Giới thiệu về bộ ký tự regex Python
Bộ ký tự [hoặc lớp ký tự] là một bộ ký tự, ví dụ: chữ số [từ 0 đến 9], bảng chữ cái [từ a đến z] và khoảng trắng
Một bộ ký tự cho phép bạn xây dựng các biểu thức chính quy với các mẫu khớp với một chuỗi có một hoặc nhiều ký tự trong một bộ ký tự
\d. bộ ký tự chữ số
Biểu thức chính quy sử dụng
6 để biểu thị một bộ ký tự chữ số khớp với một chữ số từCode language: Python [python]
3 0 2 0 0 8
7 đếnCode language: Python [python]
3 0 2 0 0 8
8Code language: Python [python]
3 0 2 0 0 8
Ví dụ sau sử dụng hàm
9 để so khớp từng chữ số trong một chuỗi bằng cách sử dụng bộ ký tựCode language: Python [python]
3 0 2 0 0 8
6Code language: Python [python]
3 0 2 0 0 8
Code language: Python [python]
import re s = 'Python 3.0 was released in 2008' matches = re.finditer['\d', s] for match in matches: print[match.group[]]
đầu ra
Code language: Python [python]
3 0 2 0 0 8
Để khớp một nhóm gồm hai chữ số, bạn sử dụng
1. Ví dụCode language: Python [python]
import re s = 'Python 3.0 was released in 2008' matches = re.finditer['\d\d', s] for match in matches: print[match.group[]]
import re s = 'Python 3.0 was released in 2008' matches = re.finditer['\d\d', s] for match in matches: print[match.group[]]
Code language: Python [python]
đầu ra
Code language: Python [python]
20 08
Tương tự, bạn có thể khớp một nhóm bốn chữ số bằng cách sử dụng mẫu
2Code language: Python [python]
import re s = 'Python 3.0 was released in 2008' matches = re.finditer['\d\d', s] for match in matches: print[match.group[]]
1Code language: Python [python]
3 0 2 0 0 8
đầu ra
2Code language: Python [python]
3 0 2 0 0 8
Sau đó, bạn sẽ học cách sử dụng lượng từ để rút ngắn mẫu. Vì vậy, thay vì sử dụng mẫu
2, bạn có thể sử dụng mẫu ngắn hơn nhưCode language: Python [python]
import re s = 'Python 3.0 was released in 2008' matches = re.finditer['\d\d', s] for match in matches: print[match.group[]]
4Code language: Python [python]
import re s = 'Python 3.0 was released in 2008' matches = re.finditer['\d\d', s] for match in matches: print[match.group[]]
\w. bộ ký tự từ
Biểu thức chính quy sử dụng
5 để biểu diễn bộ ký tự từ.Code language: Python [python]
import re s = 'Python 3.0 was released in 2008' matches = re.finditer['\d\d', s] for match in matches: print[match.group[]]
5 khớp với một ký tự ASCII bao gồm bảng chữ cái Latinh, chữ số và dấu gạch dưới [Code language: Python [python]
import re s = 'Python 3.0 was released in 2008' matches = re.finditer['\d\d', s] for match in matches: print[match.group[]]
7]Code language: Python [python]
import re s = 'Python 3.0 was released in 2008' matches = re.finditer['\d\d', s] for match in matches: print[match.group[]]
Ví dụ sau sử dụng hàm
9 để khớp từng ký tự từ đơn trong một chuỗi bằng cách sử dụng bộ ký tựCode language: Python [python]
3 0 2 0 0 8
5
import re s = 'Python 3.0 was released in 2008' matches = re.finditer['\d\d', s] for match in matches: print[match.group[]]
Code language: Python [python]
0Code language: Python [python]
3 0 2 0 0 8
đầu ra
1Code language: Python [python]
3 0 2 0 0 8
Lưu ý rằng khoảng trắng và
0 không được bao gồm trong các kết quả khớpCode language: Python [python]
20 08
\S. bộ ký tự khoảng trắng
1 khớp với khoảng trắng bao gồm khoảng trắng, tab, xuống dòng, xuống dòng và tab dọcCode language: Python [python]
20 08
Ví dụ sau sử dụng bộ ký tự khoảng trắng để khớp với khoảng trắng trong chuỗi
4Code language: Python [python]
3 0 2 0 0 8
đầu ra
5Code language: Python [python]
3 0 2 0 0 8
Bộ ký tự nghịch đảo
Một bộ ký tự có một bộ ký tự nghịch đảo sử dụng cùng một chữ cái nhưng viết hoa. Bảng sau đây cho thấy các bộ ký tự và nghịch đảo của chúng
Bộ ký tự Bộ ký tự đảo ngược Mô tả6Code language: Python [python]
3 0 2 0 0 8
3Khớp một ký tự ngoại trừ một chữ sốCode language: Python [python]
20 08
5
import re s = 'Python 3.0 was released in 2008' matches = re.finditer['\d\d', s] for match in matches: print[match.group[]]
Code language: Python [python]
5Khớp một ký tự không phải là ký tự từCode language: Python [python]
20 08
1Code language: Python [python]
20 08
7Khớp một ký tự trừ khoảng trắngCode language: Python [python]
20 08
Ví dụ sau sử dụng
3 để khớp với số không phải là chữ số từ một số điện thoạiCode language: Python [python]
20 08
0Code language: Python [python]
3 0 2 0 0 8
đầu ra
1Code language: Python [python]
3 0 2 0 0 8
Để biến số điện thoại +1-[650]-513-0514 thành 16505130514, bạn có thể sử dụng hàm sub[]
2Code language: Python [python]
3 0 2 0 0 8
đầu ra
3Code language: Python [python]
3 0 2 0 0 8
Trong ví dụ này, hàm
9 thay thế ký tự khớp với mẫuCode language: Python [python]
20 08
3 bằng chuỗi ký tựCode language: Python [python]
20 08
11 trong số điện thoại được định dạngCode language: Python [python]
3 0 2 0 0 8
Dấu chấm[. ] bộ ký tự
Bộ ký tự dấu chấm [_______90] khớp với bất kỳ ký tự đơn nào ngoại trừ dòng mới [
13]. Ví dụ sau sử dụng dấu chấm [. ] ký tự được đặt để khớp với mọi ký tự trừ dòng mớiCode language: Python [python]
3 0 2 0 0 8