PYTHON REGEX
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Thông báo: Download 4 khóa học Python từ cơ bản đến nâng cao tại đây.

Tài liệu tham khảo nhanh về Regex trong Python

Biểu thức chính quy (regex) là một công cụ tốt trong lập trình, cho phép mình tìm kiếm, so khớp và thao tác trên chuỗi văn bản một cách hiệu quả. Trong Python, regex được hỗ trợ thông qua mô-đun re, cung cấp các hàm và cú pháp phong phú để làm việc với các mẫu chuỗi phức tạp. Để sử dụng regex một cách thành thạo, việc nắm vững các ký tự, định lượng, nhóm bắt, và các cờ là điều cần thiết. Tài liệu tham khảo nhanh này sẽ giúp bạn dễ dàng tra cứu và áp dụng các khái niệm regex trong Python, nâng cao khả năng xử lý chuỗi và giải quyết các bài toán lập trình một cách hiệu quả.

test php

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Tài liệu tham khảo nhanh về Regex trong Python

Trang này cung cấp một tài liệu tham khảo nhanh về biểu thức chính quy (regex) trong Python mà bạn có thể sử dụng khi làm việc với regex.

Character sets

Mẫu Ý nghĩa
\w Khớp một ký tự từ a-z, A-Z, 0-9, và gạch dưới (_)
\d Khớp một chữ số từ 0-9
\s Khớp khoảng trắng bao gồm \t, \n, \r và khoảng trắng
. Khớp bất kỳ ký tự nào ngoại trừ dòng mới
\W Khớp bất kỳ ký tự nào ngoại trừ ký tự từ
\D Khớp bất kỳ ký tự nào ngoại trừ chữ số
\S Khớp bất kỳ ký tự nào ngoại trừ khoảng trắng

Anchors trong Python

Mẫu Ý nghĩa
^ Khớp tại đầu chuỗi
$ Khớp tại cuối chuỗi
\b Khớp tại vị trí biên từ
\B Khớp tại vị trí không phải là biên từ

Quantifiers trong Python

Định lượng (Greedy) Định lượng (Lazy) Ý nghĩa
* *? Khớp phần tử trước nó 0 hoặc nhiều lần
+ +? Khớp phần tử trước nó 1 hoặc nhiều lần
? ?? Khớp phần tử trước nó 0 hoặc 1 lần
{n} {n}? Khớp phần tử trước nó chính xác n lần
{n,} {n,}? Khớp phần tử trước nó ít nhất n lần
{n,m} {n,m}? Khớp phần tử trước nó từ n đến m lần

Sets & Ranges trong Python

Mẫu Ý nghĩa
[XYZ] Khớp bất kỳ phần tử nào trong ba phần tử X, Y, và Z
[X-Y] Khớp phạm vi từ X đến Y
^[XYZ] Khớp bất kỳ phần tử nào ngoại trừ X, Y, và Z
^[X-Y] Khớp bất kỳ phần tử nào ngoại trừ trong phạm vi X đến Y

Nhóm Capturing trong Python

Mẫu Ý nghĩa
(X) Bắt X trong nhóm
(?P<name>X) Bắt X và gán tên cho nó
\N Tham chiếu đến nhóm bắt số N
\g<N> Tham chiếu đến nhóm bắt số N (cú pháp thay thế)

Alternation trong Python

Mẫu Ý nghĩa
X|Y Khớp X hoặc Y

Look Around trong Python

Mẫu Ý nghĩa
X(?=Y) Khớp X nhưng chỉ khi theo sau là Y
X(?!Y) Khớp X nhưng chỉ khi không theo sau là Y
(?<=Y)X Khớp X nếu trước nó có Y
(?<!Y)X Khớp X nếu trước nó không có Y

Hàm Regex trong Python

Bảng sau liệt kê các hàm regex từ mô-đun re.

Hàm Mô tả
findall() Trả về danh sách các kết quả khớp hoặc None
finditer() Trả về một iterator cung cấp tất cả các kết quả khớp không chồng chéo
search() Trả về kết quả khớp đầu tiên
fullmatch() Trả về đối tượng Match nếu toàn bộ chuỗi khớp với mẫu
match() Trả về kết quả khớp tại đầu chuỗi hoặc None
sub() Trả về chuỗi với phần khớp được thay thế bằng chuỗi thay thế
split() Chia chuỗi tại các vị trí khớp

Flags Regex trong Python

Cờ Alias Cờ nội tuyến Ý nghĩa
re.ASCII re.A ?m Cờ này chỉ liên quan đến các mẫu byte. Nó khiến \w, \W, \b, \B, \d, \D, và \S chỉ khớp ASCII thay vì khớp toàn bộ Unicode.
re.DEBUG N/A N/A Hiển thị thông tin debug của mẫu đã biên dịch.
re.IGNORECASE re.I ?i Khớp không phân biệt hoa thường. Có nghĩa là [A-Z] cũng sẽ khớp với chữ thường.
re.LOCALE re.L ?L Cờ này chỉ liên quan đến mẫu byte. Nó khiến \w, \W, \b, \B và khớp phân biệt hoa thường phụ thuộc vào ngôn ngữ hiện tại. Cờ này không tương thích với cờ re.ASCII.
re.MULTILINE re.M ?m Làm cho ^ khớp tại đầu chuỗi và đầu mỗi dòng và $ khớp tại cuối chuỗi và cuối mỗi dòng.
re.DOTALL re.S ?s Theo mặc định, dấu chấm (.) khớp bất kỳ ký tự nào ngoại trừ dòng mới. Cờ này làm cho dấu chấm (.) khớp tất cả ký tự bao gồm cả dòng mới.
re.VERBOSE re.X ?x Cờ này cho phép bạn tổ chức mẫu thành các phần logic trực quan và thêm chú thích.

Kết bài

Biểu thức chính quy (regex) là một công cụ hữu ích và mạnh mẽ trong việc xử lý chuỗi văn bản trong Python. Việc nắm vững các ký tự, định lượng, nhóm bắt và các cờ trong regex sẽ giúp bạn giải quyết các bài toán về xử lý chuỗi một cách nhanh chóng và hiệu quả. Tài liệu tham khảo nhanh này cung cấp các kiến thức cần thiết và ví dụ minh họa cụ thể, giúp bạn dễ dàng tra cứu và áp dụng trong quá trình lập trình. Hãy sử dụng regex một cách linh hoạt và sáng tạo để nâng cao hiệu suất công việc của bạn.

Bài viết này được đăng tại [free tuts .net]

Cùng chuyên mục:

Cách tạo một widget nhập ngày và giờ sử dụng PyQt QDateTimeEdit

Cách tạo một widget nhập ngày và giờ sử dụng PyQt QDateTimeEdit

Cách tạo một widget nhập giờ sử dụng lớp PyQt QTimeEdit

Cách tạo một widget nhập giờ sử dụng lớp PyQt QTimeEdit

Cách tạo một widget nhập ngày sử dụng lớp PyQt QDateEdit

Cách tạo một widget nhập ngày sử dụng lớp PyQt QDateEdit

Cách sử dụng widget PyQt QSpinBox để tạo một spin box

Cách sử dụng widget PyQt QSpinBox để tạo một spin box

Sử dụng PyQt QComboBox để tạo Widget Combobox

Sử dụng PyQt QComboBox để tạo Widget Combobox

Cách sử dụng lớp PyQt QRadioButton

Cách sử dụng lớp PyQt QRadioButton

Cách sử dụng lớp QCheckBox trong PyQt

Cách sử dụng lớp QCheckBox trong PyQt

Cách sử dụng QFormLayout trong PyQt

Cách sử dụng QFormLayout trong PyQt

Cách sử dụng QGridLayout trong PyQt

Cách sử dụng QGridLayout trong PyQt

Cách sử dụng QVBoxLayout trong PyQt

Cách sử dụng QVBoxLayout trong PyQt

Cách sử dụng widget QLineEdit trong PyQt

Cách sử dụng widget QLineEdit trong PyQt

Cách sử dụng widget QPushButton của PyQt

Cách sử dụng widget QPushButton của PyQt

Cách sử dụng widget PyQt QLabel

Cách sử dụng widget PyQt QLabel

Tín hiệu và Khe (Signals & Slots) trong PyQt

Tín hiệu và Khe (Signals & Slots) trong PyQt

PyQt là gì? Tạo một chương trình

PyQt là gì? Tạo một chương trình "Hello World".

Ứng dụng System Tray với Tkinter

Ứng dụng System Tray với Tkinter

Cách hiển thị đồ thị từ thư viện Matplotlib trong Tkinter

Cách hiển thị đồ thị từ thư viện Matplotlib trong Tkinter

Cách sử dụng Validate trong Tkinter

Cách sử dụng Validate trong Tkinter

Cấu trúc MVC trong Tkinter

Cấu trúc MVC trong Tkinter

Cách sử dụng widget PhotoImage của Tkinter

Cách sử dụng widget PhotoImage của Tkinter

Top