Hướng dẫn re findall trong python - re findall in python



Nội dung chính

  • Regex trong Python
  • Các hàm Regex
  • Xây dựng biểu thức chính quy
    • Meta-Characters
    • Ký tự đặc biệt
    • Set
  • Hàm findall()
  • Đối tượng Match (kết quả khớp)
    • Các phương thức đối tượng Match

Biểu thức chính quy (Regular Expressions) hay Regex trong Python có thể được định nghĩa là chuỗi các ký tự được sử dụng để tìm kiếm một mẫu trong chuỗi. Mô-đun re cung cấp hỗ trợ để sử dụng regex trong chương trình python. Mô-đun re bắn ra một ngoại lệ nếu có lỗi xảy ra trong khi sử dụng biểu thức chính quy. Mô-đun re cung cấp hỗ trợ để sử dụng regex trong chương trình python. Mô-đun re bắn ra một ngoại lệ nếu có lỗi xảy ra trong khi sử dụng biểu thức chính quy.

Bạn càn phải import mô-đun re để sử dụng các chức năng regex trong python.



Các hàm Regex

Các hàm regex sau được sử dụng trong Python.

STTHàmMô tả
1 match Hàm này khớp với mẫu regex trong chuỗi với cờ tùy chọn. Nó trả về true nếu một kết quả khớp được tìm thấy trong chuỗi nếu không nó trả về false.
2 search Hàm này trả về đối tượng khớp nếu có một kết quả khớp được tìm thấy trong chuỗi.
3 findall Nó trả về một danh sách chứa tất cả các kết quả khớp của một mẫu trong chuỗi.
4 split Trả về một danh sách trong đó chuỗi đã được phân chia theo mỗi kết quả khớp.
5 sub Thay thế một hoặc nhiều kết quả khớp trong chuỗi.

Xây dựng biểu thức chính quy

Một biểu thức chính quy có thể được hình thành bằng cách sử dụng kết hợp các meta-character, ký tự đặc biệt và set.

Meta-Characters

Metacharacter là một ký tự có ý nghĩa nhất định:

MetacharacterMô tảmatch
Hàm này khớp với mẫu regex trong chuỗi với cờ tùy chọn. Nó trả về true nếu một kết quả khớp được tìm thấy trong chuỗi nếu không nó trả về false. search Hàm này trả về đối tượng khớp nếu có một kết quả khớp được tìm thấy trong chuỗi.
findall Nó trả về một danh sách chứa tất cả các kết quả khớp của một mẫu trong chuỗi. split
Trả về một danh sách trong đó chuỗi đã được phân chia theo mỗi kết quả khớp. sub Thay thế một hoặc nhiều kết quả khớp trong chuỗi.
Xây dựng biểu thức chính quy Một biểu thức chính quy có thể được hình thành bằng cách sử dụng kết hợp các meta-character, ký tự đặc biệt và set. Meta-Characters
Metacharacter là một ký tự có ý nghĩa nhất định: MetacharacterVí dụ
[] Nó đại diện cho một tập các ký tự. "[a-z]"
\ Nó đại diện cho ký tự đặc biệt. "\r"
. Nó đại diện cho bất kỳ ký tự nào xuất hiện ở một số nơi cụ thể. "Ja.v."
^ Nó đại diện cho mẫu có mặt ở đầu chuỗi. "^Java"
$ Nó đại diện cho mẫu có mặt ở cuối chuỗi.

"viettuts"

*

Nó đại diện cho không hoặc nhiều lần xuất hiện của một mẫu trong chuỗi. Mô tả
match Hàm này khớp với mẫu regex trong chuỗi với cờ tùy chọn. Nó trả về true nếu một kết quả khớp được tìm thấy trong chuỗi nếu không nó trả về false.
search Hàm này trả về đối tượng khớp nếu có một kết quả khớp được tìm thấy trong chuỗi.
findall Nó trả về một danh sách chứa tất cả các kết quả khớp của một mẫu trong chuỗi.
split Trả về một danh sách trong đó chuỗi đã được phân chia theo mỗi kết quả khớp.
sub Thay thế một hoặc nhiều kết quả khớp trong chuỗi.
Xây dựng biểu thức chính quy Một biểu thức chính quy có thể được hình thành bằng cách sử dụng kết hợp các meta-character, ký tự đặc biệt và set.
Meta-Characters Metacharacter là một ký tự có ý nghĩa nhất định:
MetacharacterVí dụ
[] Nó đại diện cho một tập các ký tự.
"[a-z]" \

Nó đại diện cho ký tự đặc biệt.

"\r"

STTSetMô tả
1 match Hàm này khớp với mẫu regex trong chuỗi với cờ tùy chọn. Nó trả về true nếu một kết quả khớp được tìm thấy trong chuỗi nếu không nó trả về false.
2 search Hàm này trả về đối tượng khớp nếu có một kết quả khớp được tìm thấy trong chuỗi.
3 findall Nó trả về một danh sách chứa tất cả các kết quả khớp của một mẫu trong chuỗi.
4 split Trả về một danh sách trong đó chuỗi đã được phân chia theo mỗi kết quả khớp.
5 sub Thay thế một hoặc nhiều kết quả khớp trong chuỗi.
6 Xây dựng biểu thức chính quy Một biểu thức chính quy có thể được hình thành bằng cách sử dụng kết hợp các meta-character, ký tự đặc biệt và set.
10 Meta-Characters Metacharacter là một ký tự có ý nghĩa nhất định:


Metacharacter

Ví dụ

import re  
str = "Xin chào Bạn! Bạn đang học bài Regex trong Python."  
matches = re.findall("Bạn", str)  
print(matches)  

[]


Nó đại diện cho một tập các ký tự.

"[a-z]"

import re  
str = "Xin chào Bạn! Bạn đang học bài Regex trong Python." 
matches = re.search("Bạn", str)
print(type(matches))
print(matches)

[]

Nó đại diện cho một tập các ký tự.

"[a-z]"

  1. \ : Nó trả về bộ dữ liệu chứa vị trí bắt đầu và kết thúc của kết quả khớp.
  2. Nó đại diện cho ký tự đặc biệt. : Nó trả về một chuỗi được truyền vào hàm.
  3. "\r" : Một phần của chuỗi được trả về nơi tìm thấy kết quả khớp.

.

Nó đại diện cho bất kỳ ký tự nào xuất hiện ở một số nơi cụ thể.

[]

(9, 12)
Bạn
Xin chào Bạn! Bạn đang học bài Regex trong Python.