Trong bài viết này, bạn sẽ thấy cách sử dụng Python’s .replace()
phương pháp thực hiện thay thế chuỗi con.
Bạn cũng sẽ thấy cách thực hiện thay thế chuỗi con không phân biệt chữ hoa chữ thường.
Bắt đầu nào!
những gì làm .replace()
Phương pháp Python làm gì?
Khi sử dụng .replace()
Phương thức Python, bạn có thể thay thế mọi phiên bản của một ký tự cụ thể bằng một ký tự mới. Bạn thậm chí có thể thay thế toàn bộ chuỗi văn bản bằng một dòng văn bản mới mà bạn chỉ định.
Các .replace()
phương thức trả về một bản sao của một chuỗi. Điều này có nghĩa là chuỗi con cũ vẫn giữ nguyên, nhưng một bản sao mới được tạo ra – với tất cả văn bản cũ đã được thay thế bằng văn bản mới.
Làm thế nào để .replace()
Phương pháp Python hoạt động? Phân tích cú pháp
Cú pháp cho .replace()
phương pháp trông như thế này:
string.replace(old_text, new_text, count)
Hãy chia nhỏ nó ra:
old_text
là tham số bắt buộc đầu tiên.replace()
chấp nhận. Đó là ký tự hoặc văn bản cũ mà bạn muốn thay thế. Đặt điều này trong dấu ngoặc kép.new_text
là tham số bắt buộc thứ hai.replace()
chấp nhận. Đó là ký tự hoặc văn bản mới mà bạn muốn thay thế ký tự/văn bản cũ. Tham số này cũng cần được đặt trong dấu ngoặc kép.count
là không bắt buộc tham số thứ ba mà.replace()
chấp nhận. Theo mặc định,.replace()
sẽ thay thế lại tất cả các trường hợp của chuỗi con. Tuy nhiên, bạn có thể sử dụngcount
để chỉ định số lần xuất hiện mà bạn muốn được thay thế.
con trăn .replace()
Ví dụ về mã phương thức
Cách thay thế tất cả các phiên bản của một ký tự
Thay đổi tất cả các trường hợp của một ký tự đơn, bạn sẽ làm như sau:
phrase = "I like to learn coding on the go"
# replace all instances of 'o' with 'a'
substituted_phrase = phrase.replace("o", "a" )
print(phrase)
print(substituted_phrase)
#output
#I like to learn coding on the go
#I like ta learn cading an the ga
Trong ví dụ trên, mỗi từ chứa ký tự o
được thay thế bằng ký tự a
.
Trong ví dụ đó có bốn trường hợp của nhân vật o
. Cụ thể, nó đã được tìm thấy trong các từ to
, coding
, on
và go
.
Điều gì sẽ xảy ra nếu bạn chỉ muốn thay đổi hai từ, như to
và coding
để chứa a
thay vì o
?
Cách chỉ thay thế một số trường hợp nhất định của một ký tự
Để chỉ thay đổi hai phiên bản của một ký tự, bạn sẽ sử dụng count
tham số và đặt nó thành hai:
phrase = "I like to learn coding on the go"
# replace only the first two instances of 'o' with 'a'
substituted_phrase = phrase.replace("o", "a", 2 )
print(phrase)
print(substituted_phrase)
#output
#I like to learn coding on the go
#I like ta learn cading on the go
Nếu bạn chỉ muốn thay đổi phiên bản đầu tiên của một ký tự, bạn sẽ đặt count
tham số thành một:
phrase = "I like to learn coding on the go"
# replace only the first instance of 'o' with 'a'
substituted_phrase = phrase.replace("o", "a", 1 )
print(phrase)
print(substituted_phrase)
#output
#I like to learn coding on the go
#I like ta learn coding on the go
Cách thay thế tất cả các phiên bản của một chuỗi
Để thay đổi nhiều hơn một ký tự, quá trình này trông tương tự.
phrase = "The sun is strong today. I don't really like sun."
#replace all instances of the word 'sun' with 'wind'
substituted_phrase = phrase.replace("sun", "wind")
print(phrase)
print(substituted_phrase)
#output
#The sun is strong today. I don't really like sun.
#The wind is strong today. I don't really like wind.
Trong ví dụ trên, từ sun
đã được thay thế bằng từ wind
.
Cách chỉ thay thế một số phiên bản nhất định của chuỗi
Nếu bạn chỉ muốn thay đổi phiên bản đầu tiên của sun
đến wind
bạn sẽ sử dụng count
tham số và đặt nó thành một.
phrase = "The sun is strong today. I don't really like sun."
#replace only the first instance of the word 'sun' with 'wind'
substituted_phrase = phrase.replace("sun", "wind", 1)
print(phrase)
print(substituted_phrase)
#output
#The sun is strong today. I don't really like sun.
#The wind is strong today. I don't really like sun.
Cách thực hiện thay thế chuỗi con không phân biệt chữ hoa chữ thường trong Python
Hãy xem một ví dụ khác.
phrase = "I am learning Ruby. I really enjoy the ruby programming language!"
#replace the text "Ruby" with "Python"
substituted_text = phrase.replace("Ruby", "Python")
print(substituted_text)
#output
#I am learning Python. I really enjoy the ruby programming language!
Trong trường hợp này, điều tôi thực sự muốn làm là thay thế tất cả các phiên bản của từ Ruby
với Python
.
Tuy nhiên, đã có từ ruby
với một chữ thường r
mà tôi cũng muốn thay đổi.
Bởi vì chữ cái đầu tiên là chữ thường chứ không phải chữ hoa như tôi đã chỉ định với Ruby
nó vẫn giữ nguyên và không thay đổi thành Python
.
Các .replace()
phương pháp là trường hợp nhạy cảmvà do đó, nó thực hiện thay thế chuỗi con phân biệt chữ hoa chữ thường.
Để thực hiện một trường hợp không nhạy cảm thay thế chuỗi con, bạn sẽ phải làm điều gì đó khác biệt.
Bạn sẽ cần phải sử dụng re.sub()
chức năng và sử dụng re.IGNORECASE
lá cờ.
để sử dụng re.sub()
bạn cần phải:
- Sử dụng
re
mô-đun, thông quaimport re
. - Chỉ định một biểu thức chính quy
pattern
. - Đề cập đến những gì bạn muốn
replace
hoa văn. - đề cập đến
string
bạn muốn thực hiện thao tác này trên. - Tùy chọn, chỉ định
count
tham số để thay thế chính xác hơn và chỉ định số lần thay thế tối đa mà bạn muốn thực hiện. - Các
re.IGNORECASE
cờ cho biểu thức chính quy thực hiện khớp không phân biệt chữ hoa chữ thường.
Vì vậy, tất cả cùng nhau cú pháp trông như thế này:
import re
re.sub(pattern, replace, string, count, flags)
Lấy ví dụ từ trước đó:
phrase = "I am learning Ruby. I really enjoy the ruby programming language!"
Đây là cách tôi sẽ thay thế cả hai Ruby
và ruby
với Python
:
import re
phrase = "I am learning Ruby. I really enjoy the ruby programming language!"
phrase = re.sub("Ruby","Python", phrase, flags=re.IGNORECASE)
print(phrase)
#output
#I am learning Python. I really enjoy the Python programming language!
kết thúc
Và bạn đã có nó – bây giờ bạn đã biết những kiến thức cơ bản về thay thế chuỗi con. Hy vọng rằng bạn tìm thấy hướng dẫn này hữu ích.
Để tìm hiểu thêm về Python, hãy xem Chứng chỉ về Máy tính Khoa học với Python của freeCodeCamp.
Bạn sẽ bắt đầu từ những điều cơ bản và học theo cách tương tác và thân thiện với người mới bắt đầu. Cuối cùng, bạn cũng sẽ xây dựng năm dự án để đưa vào thực tế và giúp củng cố những gì bạn đã học.
Cảm ơn đã đọc và mã hóa hạnh phúc!