Thay thế tất cả hoặc n lần xuất hiện của một chuỗi con trong một chuỗi đã cho là một vấn đề khá phổ biến trong thao tác chuỗi và xử lý văn bản nói chung. May mắn thay, hầu hết các tác vụ này đều được thực hiện dễ dàng trong Python nhờ vô số hàm tích hợp sẵn của nó, bao gồm cả hàm này Show Giả sử, chúng ta có một chuỗi chứa câu sau
Mục tiêu của chúng ta là thay thế từ 1 bằng từ 2
Trong bài viết này, chúng ta sẽ sử dụng hàm 3 cũng như hàm 4 và 5 với các mẫu để thay thế tất cả các lần xuất hiện của một chuỗi con từ một chuỗithay thế()Cách đơn giản nhất để thực hiện việc này là sử dụng chức năng tích hợp sẵn - 3
Hai tham số đầu tiên là bắt buộc, trong khi tham số thứ ba là tùy chọn. 7 là chuỗi con chúng tôi muốn thay thế bằng 8. Điều đáng chú ý là hàm trả về một chuỗi mới, với phép biến đổi được thực hiện mà không ảnh hưởng đến chuỗi ban đầuThử một lần đi 1Chúng tôi đã thực hiện thao tác trên 9, đóng gói kết quả vào 10 và in cả haiMã này dẫn đến 4Một lần nữa, chuỗi trong bộ nhớ mà 9 trỏ tới vẫn không thay đổi. Các chuỗi trong Python là bất biến, điều đó có nghĩa đơn giản là bạn không thể thay đổi một chuỗi. Tuy nhiên, bạn có thể gán lại biến tham chiếu cho một giá trị mớiĐể dường như thực hiện thao tác này tại chỗ, chúng ta chỉ cần gán lại 9 cho chính nó sau thao tác 7Ở đây, chuỗi mới được tạo bởi phương thức 3 được gán cho biến 9Thay thế n lần xuất hiện của một chuỗi conBây giờ, nếu chúng ta không muốn thay đổi tất cả các lần xuất hiện của một chuỗi con thì sao? Đó là nơi tham số thứ ba của hàm 3 xuất hiện. Nó đại diện cho số lượng chuỗi con sẽ được thay thế. Đoạn mã sau chỉ thay thế lần xuất hiện đầu tiên của từ 1 bằng từ 2 3Và bản in này 4Theo mặc định, tham số thứ ba được đặt để thay đổi tất cả các lần xuất hiện Chuỗi con xuất hiện với biểu thức chính quyĐể nâng cao vấn đề hơn nữa, giả sử chúng ta không chỉ muốn thay thế tất cả các lần xuất hiện của một chuỗi con nhất định mà còn thay thế tất cả các chuỗi con phù hợp với một mẫu nhất định. Thậm chí điều này có thể được thực hiện với một lớp lót, sử dụng các biểu thức chính quy và mô-đun 18 của thư viện chuẩnBiểu thức chính quy là một chủ đề phức tạp với nhiều mục đích sử dụng trong khoa học máy tính, vì vậy chúng tôi sẽ không đi sâu vào bài viết này nhưng nếu bạn cần bắt đầu nhanh, bạn có thể xem hướng dẫn của chúng tôi về Biểu thức chính quy trong Python Hãy xem hướng dẫn thực hành, thực tế của chúng tôi để học Git, với các phương pháp hay nhất, tiêu chuẩn được ngành chấp nhận và bao gồm bảng gian lận. Dừng các lệnh Git trên Google và thực sự tìm hiểu nó Về bản chất, một biểu thức chính quy xác định một mẫu. Ví dụ: giả sử chúng ta có một văn bản về những người sở hữu chó và mèo và chúng ta muốn thay đổi cả hai điều khoản bằng từ 19. Trước tiên, chúng ta cần xác định một mẫu phù hợp với cả hai thuật ngữ như - 40Sử dụng hàm sub()Với mẫu đã được sắp xếp, chúng ta sẽ sử dụng hàm 41 có cú pháp sau 9Đối số đầu tiên là mẫu mà chúng tôi đang tìm kiếm (một chuỗi hoặc một đối tượng 42), 43 là những gì chúng tôi sẽ chèn (có thể là một chuỗi hoặc một hàm; nếu đó là một chuỗi, bất kỳ dấu gạch chéo ngược nào sẽ thoát khỏi nó là Các đối số tùy chọn là 45 và 46 cho biết số lần xuất hiện cần được thay thế và các cờ được sử dụng để xử lý biểu thức chính quy tương ứngNếu mẫu không khớp với bất kỳ chuỗi con nào, chuỗi ban đầu sẽ được trả về không thay đổi 5mã này in 0So khớp mẫu không phân biệt chữ hoa chữ thườngVí dụ: để thực hiện khớp mẫu phân biệt chữ hoa chữ thường, chúng tôi sẽ đặt tham số cờ thành 47 1Giờ đây, bất kỳ trường hợp kết hợp nào của 48 cũng sẽ được đưa vào. Khi khớp mẫu với nhiều chuỗi, để tránh sao chép nó ở nhiều nơi, chúng ta có thể xác định một đối tượng 42. Chúng cũng có hàm 4 với cú pháp 2Sử dụng Đối tượng MẫuHãy xác định một 42 cho mèo và chó và kiểm tra một vài câu 3Cung cấp cho chúng tôi đầu ra 4Hàm subn()Ngoài ra còn có một phương thức 5 với cú pháp 5Hàm 5 trả về một Tuple có chuỗi và số lượng khớp trong Chuỗi mà chúng tôi đã tìm kiếm 6Các tuple trông giống như 7Một đối tượng 42 chứa một hàm 5 tương tự 8Và nó được sử dụng theo một cách rất giống nhau 9Kết quả này trong 0Phần kết luậnPython cung cấp các hàm dễ dàng và đơn giản để xử lý chuỗi. Cách dễ nhất để thay thế tất cả các lần xuất hiện của một chuỗi con đã cho trong một chuỗi là sử dụng hàm 3Nếu cần, mô-đun 18 của thư viện tiêu chuẩn cung cấp bộ công cụ đa dạng hơn có thể được sử dụng cho các vấn đề thích hợp hơn như tìm mẫu và tìm kiếm phân biệt chữ hoa chữ thường
Làm cách nào để sử dụng regex để thay thế chuỗi?Để sử dụng RegEx, đối số thay thế đầu tiên sẽ được thay thế bằng cú pháp regex, ví dụ: /regex/ . Cú pháp này đóng vai trò là một mẫu trong đó bất kỳ phần nào của chuỗi khớp với nó sẽ được thay thế bằng chuỗi con mới. Chuỗi 3foobar4 khớp với biểu thức chính quy /\d. *\d/ , vì vậy nó được thay thế.
Bạn có thể thay thế văn bản bằng regex không?Tìm và thay thế văn bản bằng biểu thức chính quy Khi bạn muốn tìm kiếm và thay thế các mẫu văn bản cụ thể, hãy sử dụng biểu thức chính quy . Họ có thể giúp bạn khớp mẫu, phân tích cú pháp, lọc kết quả, v.v. Khi bạn học cú pháp regex, bạn có thể sử dụng nó cho hầu hết mọi ngôn ngữ. |