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.

Regex Word Boundary trong Python

Trong lập trình, việc xử lý và tìm kiếm văn bản là một công việc thường xuyên và quan trọng. Biểu thức chính quy (regular expression hay regex) là công cụ mạnh mẽ giúp thực hiện các nhiệm vụ này một cách hiệu quả. Trong bài viết này, mình sẽ tìm hiểu về ký tự biên giới từ trong biểu thức chính quy Python. Đây là một khái niệm quan trọng giúp bạn xác định các vị trí chính xác của từ trong một chuỗi, từ đó hỗ trợ việc kiểm tra và xử lý dữ liệu một cách chính xác và hiệu quả hơn.

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.

Giới thiệu về Regex Word Boundary trong Python

Một chuỗi có các vị trí sau đây được coi là biên giới từ:

  • Trước ký tự đầu tiên trong chuỗi nếu ký tự đầu tiên là ký tự từ (\w).
  • Giữa hai ký tự trong chuỗi nếu ký tự đầu tiên là ký tự từ (\w) và ký tự thứ hai không phải là ký tự từ (\W – tập hợp ký tự ngược của \w).
  • Sau ký tự cuối cùng trong chuỗi nếu ký tự cuối cùng là ký tự từ (\w).

Hình ảnh sau minh họa các vị trí biên giới từ trong chuỗi "PYTHON 3!":

Screenshot 202024 07 10 20120559 png

  • Trước chữ P (tiêu chí #1)
  • Sau chữ N (tiêu chí #2)
  • Trước số 3 (tiêu chí #2)
  • Sau số 3 (tiêu chí #2)

Biểu thức chính quy sử dụng \b để biểu thị một biên giới từ. Ví dụ, bạn có thể dùng \b để khớp toàn bộ từ bằng cách sử dụng mẫu sau:

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

r'\bword\b'

Ví dụ sau đây khớp từ "Python" trong một chuỗi:

import re

s = 'CPython is the implementation of Python in C'
matches = re.finditer('Python', s)
for match in matches:
    print(match.group())

Kết quả trả về hai kết quả khớp, một trong từ "CPython" và một trong từ "Python":

Python
Python

Tuy nhiên, nếu bạn sử dụng biên giới từ \b, chương trình sẽ chỉ trả về một kết quả khớp:

import re

s = 'CPython is the implementation of Python in C'
matches = re.finditer(r'\bPython\b', s)
for match in matches:
    print(match.group())

Kết quả:

<re.Match object; span=(33, 39), match='Python'>

Trong ví dụ này, mẫu '\bPython\b' khớp với toàn bộ từ "Python" trong chuỗi 'CPython is the implementation of Python in C'.

Kết bài

Việc sử dụng ký tự biên giới từ trong biểu thức chính quy giúp bạn xác định và làm việc với các từ trong một chuỗi một cách chính xác và hiệu quả. Ký tự \b đại diện cho biên giới từ, giúp phân biệt giữa các từ hoàn chỉnh và các phần của từ. Bằng cách sử dụng biểu thức chính quy với ký tự biên giới từ, bạn có thể tìm kiếm và xử lý dữ liệu văn bản một cách hiệu quả hơn, đảm bảo rằng các thao tác của bạn chỉ ảnh hưởng đến các từ mục tiêu cụ thể. Hy vọng rằng qua hướng dẫn này, bạn đã nắm được cách sử dụng ký tự biên giới từ trong biểu thức chính quy để nâng cao kỹ năng xử lý văn bản của mình.

Cùng chuyên mục:

Tìm hiểu Backreferences trong regex của Python

Tìm hiểu Backreferences trong regex của Python

Nhóm Non-capturing trong Regex Python

Nhóm Non-capturing trong Regex Python

Các nhóm Capturing trong regex của Python

Các nhóm Capturing trong regex của Python

Sets và Ranges trong Regex của Python

Sets và Ranges trong Regex của Python

Lượng từ non-greed trong Regex của Python

Lượng từ non-greed trong Regex của Python

Chế độ Greedy trong Regex Python

Chế độ Greedy trong Regex Python

Các lượng từ trong Regex của Python

Các lượng từ trong Regex của Python

Regex với các ký tự neo trong Python

Regex với các ký tự neo trong Python

Các tập ký tự trong Regex của Python

Các tập ký tự trong Regex của Python

Biểu thức chính quy (Regex) trong Python

Biểu thức chính quy (Regex) trong Python

Tìm hiểu Context Managers trong Python

Tìm hiểu Context Managers trong Python

Biểu thức Generator trong Python

Biểu thức Generator trong Python

Tìm hiểu Generators trong Python

Tìm hiểu Generators trong Python

Sử dụng hiệu quả hàm iter() trong Python

Sử dụng hiệu quả hàm iter() trong Python

Iterator vs Iterable trong Python

Iterator vs Iterable trong Python

Tìm hiểu về Iterator trong Python

Tìm hiểu về Iterator trong Python

Dãy số Fibonacci trong Python

Dãy số Fibonacci trong Python

Cắt Chuỗi (Slicing) trong Python

Cắt Chuỗi (Slicing) trong Python

Sự khác biệt giữa Tuple và List trong Python

Sự khác biệt giữa Tuple và List trong Python

Các sequence trong Python

Các sequence trong Python

Top