Thay thế ký tự trong chuỗi python | Laptrinhcanban.com

Thay thế ký tự trong chuỗi python

Hướng dẫn thay thế ký tự trong chuỗi python. Bạn sẽ học được cách thay thế ký tự trong chuỗi python bằng phương thức replace trong bài viết này. Bạn cũng sẽ học được cách ứng dụng phương thức replace() để xóa toàn bộ các ký tự chỉ định trong chuỗi python sau bài học này.

Thay thế ký tự trong chuỗi python bằng phương thức replace

Cú pháp phương thức replace trong python

Chúng ta sử dụng phương thức replace để thay thế ký tự trong chuỗi python với cú pháp sau đây:

str.replace(old, new, count)

Trong đó new là chuỗi ký tự mới sẽ thay thế chuỗi ký tự oldnếu có trong chuỗi str.
Đối số thứ ba count sẽ chỉ định số lần thay thế ký tự lớn nhất khi dùng phương thức replace. Nếu lược bỏ count, tất cả các chuỗi ký tự old tồn tại trong chuỗi str sẽ bị thay thế bởi chuỗi ký tự new.

Lược bỏ giá trị của count trong phương thức replace trong python

Nếu lược bỏ giá trị của count trong phương thức replace khi thay thế ký tự trong chuỗi python, thì chuỗi ký tự mới sẽ thay thế tất cả các chuỗi ký tự cũ có trong chuỗi ban đầu.
Ví dụ:

print("Copyright 2018".replace("2018", "2019"))
#>> Copyright 2019

print("box width 100, box height 50".replace("box", "div"))
#>> div width 100, div height 50

print("Apple".replace("PP", "oo"))
#>> Apple

ở ví dụ 1, chuỗi 2019 đã thay thế chuỗi 2018 trong chuỗi ban đầu Copyright 2018.

ở ví dụ 2, chuỗi box xuất hiện nhiều lần trong chuỗi ban đầu box width 100, box height 50 và đã được thay thế toàn bộ bởi chuỗi div.

ở ví dụ 3, do chuỗi PP không tồn tại trong chuỗi ban đầu Apple nên kết quả trả về đúng như chuỗi ban đầu.

Chỉ định giá trị của count trong phương thức replace trong python

Nếu chỉ định giá trị của count trong phương thức replace khi thay thế ký tự trong chuỗi python, thì chuỗi ký tự mới sẽ chỉ thay thế chuỗi ký tự cũ trong chuỗi ban đầu số lần bằng đúng với giá trị của count, tính từ bên trái qua.
Ví dụ:

print("AA BB AA CC AA DD AA EE".replace("AA", "aa"))
#>> aa BB aa CC aa DD aa EE

print("AA BB AA CC AA DD AA EE".replace("AA", "aa", 2))
#>> aa BB aa CC AA DD AA EE

ở ví dụ 1 chúng ta không chỉ định count, do đó tất cả chuỗi AA trong chuỗi cũ đều đã được thay thế bởi chuỗi aa.

Còn ở ví dụ 2, do chúng ta chỉ định count bằng 2, nên phương thức replace chỉ thay thế đúng 2 lần chuỗi AA trong chuỗi cũ tính từ bên trái qua. Do đó kết quả trả về như ví dụ ở trên.

Ứng dụng phương thức replace() để xóa toàn bộ các ký tự chỉ định trong chuỗi python

Chúng ta có thể ứng dụng chức năng thay thế ký tự trong chuỗi python của phương thức replace() để chuyển các ký tự chỉ định trong chuỗi thành ký tự trống và qua đó có thể xóa toàn bộ các ký tự chỉ định trong chuỗi python.

Ví dụ, chúng ta sẽ xóa toàn bộ các ký tự city trong chuỗi bigcityboy như sau:

str = "bigcityboy"
print(str.replace("city", ""))
#> bigboy

Lưu ý là cách làm này chỉ có thể xóa các ký tự theo thứ tự nhất định mà thôi. Bạn cũng có thể tìm hiểu thêm các cách xóa ký tự trong chuỗi python khác tại bài viết Xóa ký tự trong chuỗi python (strip ,lstrip, rstrip )

Tổng kết và thực hành

Trên đây Kiyoshi đã hướng dẫn bạn cách thay thế ký tự trong chuỗi python bằng phương thức replace rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.

Và hãy cùng tìm hiểu những kiến thức sâu hơn về python trong các bài học tiếp theo.

HOME>> >>

Profile
きよしです!笑

Tác giả : Kiyoshi (Chis Thanh)

Kiyoshi là một cựu du học sinh tại Nhật Bản. Sau khi tốt nghiệp đại học Toyama năm 2017, Kiyoshi hiện đang làm BrSE tại Tokyo, Nhật Bản.