Trong bài viết này, bạn sẽ thấy cách sử dụng phương thức .replace () của Python để 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! Phương thức Python .replace () làm gì? Khi sử dụng phương thức Python .replace (), bạn có thể thay thế mọi phiên bản của một
Bạn đang xem: str thay thế trong python
Trong bài viết này, bạn sẽ xem cách sử dụng phương thức .replace ()
của Python để thực hiện phân bổ 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.
Hãy bắt đầu!
Phương thức Python .replace ()
làm gì?
Khi sử dụng phương thức Python .replace ()
, 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.
Phương thức .replace ()
trả về bản sao của một chuỗi. Điều này có nghĩa là chuỗi con cũ vẫn được giữ nguyên, nhưng một bản sao mới sẽ được tạo – với tất cả văn bản cũ đã được thay thế bằng văn bản mới.
Phương thức Python .replace ()
hoạt động như thế nào? Phân tích cú pháp
Cú pháp của phương thức .replace ()
có dạng như sau:
string.replace (old_text, new_text, count)
Hãy chia nhỏ nó:
-
old_text
là tham số bắt buộc đầu tiên mà.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 mà.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à tham số thứ ba tùy chọn mà.replace ()
chấp nhận. Theo mặc định,.replace ()
sẽ thay thế tất cả các bản sao 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ế.
Python .replace ()
Ví dụ về mã phương pháp
Cách thay thế tất cả các trường hợp của một ký tự đơn
Để thay đổi tất cả các trường hợp của một ký tự, bạn sẽ thực hiện như sau:
cluster = "Tôi muốn học viết mã khi đang di chuyển"
# thay thế tất cả các trường hợp của 'o' bằng 'a'
substituted_phrase = cluster.replace ("o", "a")
print (cụm từ)
print (substituted_phrase)
#output
# Tôi thích học viết mã khi di chuyển
# I like we learning 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 ký 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ư thành
và mã hóa
, để chứa a
thay vì o mã>?
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 trường hợp của một ký tự, bạn sẽ sử dụng tham số count
và đặt thành hai:
cluster = "Tôi muốn học viết mã khi đang di chuyển"
# chỉ thay thế hai trường hợp đầu tiên của 'o' bằng 'a'
substituted_phrase = cluster.replace ("o", "a", 2)
print (cụm từ)
print (substituted_phrase)
#output
# Tôi thích học viết mã khi di chuyển
# Tôi thích chúng ta học cading khi đang di chuyển
Nếu bạn chỉ muốn thay đổi trường hợp đầu tiên của một ký tự, bạn sẽ đặt tham số count
thành một:
cluster = "Tôi muốn học viết mã khi đang di chuyển"
# chỉ thay thế trường hợp đầu tiên của 'o' bằng 'a'
substituted_phrase = cluster.replace ("o", "a", 1)
print (cụm từ)
print (substituted_phrase)
#output
# Tôi thích học viết mã khi di chuyển
# Tôi thích chúng ta học mã khi đang di chuyển
Cách thay thế tất cả các bản sao của một chuỗi
Để thay đổi nhiều ký tự, quy trình sẽ tương tự.
cluster = "Hôm nay nắng mạnh. Tôi không thực sự thích nắng."
# thay thế tất cả các trường hợp của từ 'nắng' bằng 'gió'
substituted_phrase = cụm từ.replace ("mặt trời", "gió")
print (cụm từ)
print (substituted_phrase)
#output
# Hôm nay nắng mạnh. Tôi không thực sự thích nắng.
# Hôm nay gió mạnh. Tôi không thực sự thích gió.
Trong ví dụ trên, từ sun
đã được thay thế bằng từ wind
.
Cách chỉ thay thế một số trường hợp nhất định của chuỗi
Nếu bạn chỉ muốn thay đổi trường hợp đầu tiên của sun
thành wind
, bạn sẽ sử dụng tham số count
và đặt nó thành một.
cluster = "Hôm nay nắng mạnh. Tôi thực sự không thích nắng."
# chỉ thay thế trường hợp đầu tiên của từ 'sun' bằng 'wind'
substituted_phrase = cụm từ.replace ("mặt trời", "gió", 1)
print (cụm từ)
print (substituted_phrase)
#output
# Hôm nay nắng mạnh. Tôi không thực sự thích nắng.
# Hôm nay gió mạnh. Tôi không thực sự thích nắng.
Cách thực hiện thay thế chuỗi con phân biệt chữ hoa chữ thường trong Python
Hãy xem một ví dụ khác.
cụm từ = "Tôi đang học Ruby. Tôi thực sự thích ngôn ngữ lập trình ruby!"
# thay thế văn bản "Ruby" bằng "Python"
substituted_text = cluster.replace ("Ruby", "Python")
in (văn bản thay thế)
#output
# Tôi đang học Python. Tôi thực sự thích ngôn ngữ lập trình ruby!
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
bằng Python
.
Tuy nhiên, có từ ruby
với r
viết thường, tôi cũng muốn thay đổi từ này.
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ên nó vẫn giữ nguyên và không thay đổi thành Python
.
Phương thức .replace ()
phân biệt chữ hoa chữ thường và do đó nó thực hiện thay thế chuỗi con phân biệt chữ hoa chữ thường.
Để thực hiện thay thế chuỗi con không phân biệt chữ hoa chữ thường, bạn sẽ phải làm điều gì đó khác biệt.
Bạn cần sử dụng hàm re.sub ()
và sử dụng cờ re.IGNORECASE
.
Để sử dụng re.sub ()
, bạn cần:
- Sử dụng mô-đun
re
, thông quaimport re
. - Sử dụng một biểu thức chính quy
mẫu
. - Đề cập đến những gì bạn muốn
thay thế
mẫu. - Đề cập đến
chuỗi
mà bạn muốn thực hiện thao tác này. - Theo tùy chọn, chỉ định thông số
count
để thay thế chính xác hơn và chỉ định số lượng thay thế tối đa mà bạn muốn thực hiện. - Cờ
re.IGNORECASE
yêu cầu biểu thức chính quy thực hiện đối sánh không phân biệt chữ hoa chữ thường.
Vì vậy, tất cả cùng nhau thì cú pháp sẽ giống như sau:
nhập lại
re.sub (mẫu, thay thế, chuỗi, đếm, cờ)
Lấy ví dụ từ trước:
cluster = "Tôi đang học Ruby. Tôi thực sự thích ngôn ngữ lập trình ruby!"
Đây là cách tôi thay thế cả Ruby
và ruby
bằng Python
:
nhập lại
cụm từ = "Tôi đang học Ruby. Tôi thực sự thích ngôn ngữ lập trình ruby!"
cụm từ = re.sub ("Ruby", "Python", cụm từ, flags = re.IGNORECASE)
print (cụm từ)
#output
# Tôi đang học Python. Tôi thực sự thích ngôn ngữ lập trình Python!
Kết thúc
Và bạn đã có nó - bây giờ bạn đã biết những điều cơ bản về thay thế chuỗi con. Hy vọng rằng bạn thấy hướng dẫn này hữu ích.
Để tìm hiểu thêm về Python, hãy xem Máy tính khoa học có chứng chỉ 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.
Cảm ơn bạn đã đọc và chúc bạn viết mã vui vẻ!
Xem thêm những thông tin liên quan đến chủ đề str thay thế bằng python
String Conversion in Python: When to Use __repr__ vs __str__
- Tác giả: Real Python
- Ngày đăng: 2017-02-07
- Đánh giá: 4 ⭐ ( 7684 lượt đánh giá )
- Khớp với kết quả tìm kiếm: https://dbader.org/python-tricks ► String conversion in Python classes and other advanced OOP techniques
When you define a custom class in Python and then try to print one of its instances to the console (or inspect it in an interpreter session) you get a relatively unsatisfying result. The default "to string" conversion behavior is basic and lacking in detail.
By default all you get is a string containing the class name and the `id` of the object instance (which is the object's memory address in CPython). That's better than *nothing*, but it's also not very useful.
The solution here is adding the `__str__` and `__repr__` "dunder" methods (some call them "magic methods") to your class.
They are the Pythonic way to control how objects are converted to strings in different situations.
In this tutorial video I'll do a deep dive on how Python's to-string conversion works and how you can add it to your own custom classes.
I'll walk you through the __str__ and __repr__ methods, when to use each, and some tips on how to use them in real world scenarios.
Just remember:
* The result of `__str__` should be readable.
* The result of `__repr__` should be unambiguous.
* Always add a `__repr__` to your classes. The default implementation for `__str__` just calls `__repr__`, so you get the best of both worlds.
To learn how to use the full potential of Python check out "Python Tricks: The Book" at the link below: https://dbader.org/pytricks-book
FREE COURSE – "5 Thoughts on Mastering Python" https://dbader.org/python-mastery
PYTHON TRICKS: THE BOOK https://dbader.org/pytricks-book
SUBSCRIBE TO THIS CHANNEL: https://dbader.org/youtube
* * *
► Python Developer MUGS, T-SHIRTS & MORE: https://nerdlettering.com
FREE Python Tutorials & News:
» Python Tutorials: https://dbader.org
» Python News on Twitter: https://twitter.com/@dbader_org
» Weekly Tips for Pythonistas: https://dbader.org/newsletter
» Subscribe to this channel: https://dbader.org/youtube
Python: Hàm xử lý chuỗi (string)
- Tác giả: v1study.com
- Đánh giá: 3 ⭐ ( 5299 lượt đánh giá )
- Khớp với kết quả tìm kiếm: Ngôn ngữ lập trình Python hỗ trợ cho chúng ta khá nhiều hàm để xử lý hay thao tác với chuỗi. Xin được nhắc lại, chuỗi trong Python phải được đặt trong cặp
Hàm replace() trong Python
- Tác giả: viettuts.vn
- Đánh giá: 4 ⭐ ( 7062 lượt đánh giá )
- Khớp với kết quả tìm kiếm: Hàm replace() trong Python trả về một bản sao của chuỗi ban đầu sau khi đã thay thế các chuỗi con cũ bằng chuỗi con mới.
String trong Python
- Tác giả: phannhatchanh.com
- Đánh giá: 4 ⭐ ( 4745 lượt đánh giá )
- Khớp với kết quả tìm kiếm: Bất kỳ ký tự nào nằm trong cặp dấu nháy đơn hoặc nháy kép điều là một String (một chuỗi ký tự). Có nhiều phương thức xử lý chuỗi khác nhau.…
Các hàm xử lý chuỗi trong Python
- Tác giả: toidicode.com
- Đánh giá: 4 ⭐ ( 8675 lượt đánh giá )
- Khớp với kết quả tìm kiếm: Ở phần đầu của series mình đã giới thiệu với mọi người về chuỗi trong Python rồi, nhưng Python là một ngôn ngữ khá là linh động và mềm dẻo nên nó cũng đã cung cấp cho chúng ta rất nhiều hàm có sẵn dùng để xử lý chuỗi. Bài viết này mình sẽ liệt kê một số hàm hay dùng và ví dụ kèm theo cho mọi người cùng tham khảo.
Lớp mẫu chuỗi trong Python?
- Tác giả: vn.wsxdn.com
- Đánh giá: 4 ⭐ ( 8886 lượt đánh giá )
- Khớp với kết quả tìm kiếm:
Thay thế ký tự trong chuỗi python
- Tác giả: laptrinhcanban.com
- Đánh giá: 5 ⭐ ( 4105 lượt đánh giá )
- Khớp với kết quả tìm kiếm: 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
Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình