Hướng dẫn replace a with b in python - thay a bằng b trong python

Phương thức chuỗi


Thí dụ

Thay thế từ "chuối":

txt = "Tôi thích chuối"

x = txt.replace ("chuối", "táo")

print(x)

Hãy tự mình thử »


Định nghĩa và cách sử dụng

Phương thức

song = 'cold, cold heart'

# replacing 'cold' with 'hurt' print(song.replace('cold', 'hurt'))

song = 'Let it be, let it be, let it be, let it be'

# replacing only two occurences of 'let' print(song.replace('let', "don't let", 2))

4 thay thế một cụm từ được chỉ định bằng một cụm từ được chỉ định khác.

Lưu ý: Tất cả các lần xuất hiện của cụm từ được chỉ định sẽ được thay thế, nếu không có gì khác được chỉ định. All occurrences of the specified phrase will be replaced, if nothing else is specified.


Cú pháp

String.replace (OldValue, NewValue, Count)

Giá trị tham số

Tham sốSự mô tả
OldValueYêu cầu. Chuỗi để tìm kiếm
NewValueYêu cầu. Chuỗi để thay thế giá trị cũ bằng
đếmKhông bắt buộc. Một số chỉ định có bao nhiêu lần xuất hiện của giá trị cũ bạn muốn thay thế. Mặc định là tất cả các lần xuất hiện

Nhiều ví dụ hơn

Thí dụ

Thay thế tất cả sự xuất hiện của từ "một":

TXT = "Một là một con ngựa đua, hai hai cũng là một."

x = txt.replace ("One", "ba")

print(x)

Hãy tự mình thử »

Thí dụ

Định nghĩa và cách sử dụng

TXT = "Một là một con ngựa đua, hai hai cũng là một."

x = txt.replace ("One", "ba")

print(x)

Hãy tự mình thử »


Phương thức chuỗi


Trong hướng dẫn này, chúng tôi sẽ tìm hiểu về phương thức python thay thế () với sự trợ giúp của các ví dụ.

Phương thức

song = 'cold, cold heart'

# replacing 'cold' with 'hurt' print(song.replace('cold', 'hurt'))

song = 'Let it be, let it be, let it be, let it be'

# replacing only two occurences of 'let' print(song.replace('let', "don't let", 2))

4 thay thế cho mỗi lần xuất hiện của ký tự/văn bản cũ trong chuỗi với ký tự/văn bản mới.

Thí dụ

text = 'bat ball'

# replace b with c replaced_text = text.replace('b', 'c')

print(replaced_text) # Output: cat call


thay thế () cú pháp

Đó là cú pháp là:

str.replace(old, new [, count]) 

thay thế () tham số

Phương thức

song = 'cold, cold heart'

# replacing 'cold' with 'hurt' print(song.replace('cold', 'hurt'))

song = 'Let it be, let it be, let it be, let it be'

# replacing only two occurences of 'let' print(song.replace('let', "don't let", 2))

4 có thể mất tối đa 3 tham số:

  • Cựu Ước - Cựu Ước bạn muốn thay thế - old substring you want to replace
  • Mới - Chất nền mới sẽ thay thế bộ nền cũ - new substring which will replace the old substring
  • Đếm (Tùy chọn) - Số lần bạn muốn thay thế bộ nền cũ bằng cách (optional) - the number of times you want to replace the old substring with the new substring

Lưu ý: Nếu số lượng không được chỉ định, phương thức

song = 'cold, cold heart'

# replacing 'cold' with 'hurt' print(song.replace('cold', 'hurt'))

song = 'Let it be, let it be, let it be, let it be'

# replacing only two occurences of 'let' print(song.replace('let', "don't let", 2))

4 thay thế tất cả các lần xuất hiện của chuỗi con cũ bằng chuỗi con mới.: If count is not specified, the
song = 'cold, cold heart'

# replacing 'cold' with 'hurt' print(song.replace('cold', 'hurt'))

song = 'Let it be, let it be, let it be, let it be'

# replacing only two occurences of 'let' print(song.replace('let', "don't let", 2))

4 method replaces all occurrences of the old substring with the new substring.


thay thế () giá trị trả về

Phương thức

song = 'cold, cold heart'

# replacing 'cold' with 'hurt' print(song.replace('cold', 'hurt'))

song = 'Let it be, let it be, let it be, let it be'

# replacing only two occurences of 'let' print(song.replace('let', "don't let", 2))

4 trả về một bản sao của chuỗi trong đó chuỗi con cũ được thay thế bằng chuỗi con mới. Chuỗi ban đầu không thay đổi.

Nếu không tìm thấy chuỗi con cũ, nó sẽ trả về bản sao của chuỗi gốc.


Ví dụ 1: Sử dụng thay thế ()

song = 'cold, cold heart'

# replacing 'cold' with 'hurt' print(song.replace('cold', 'hurt'))

song = 'Let it be, let it be, let it be, let it be'

# replacing only two occurences of 'let' print(song.replace('let', "don't let", 2))

Đầu ra

hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be

Thêm ví dụ về Chuỗi thay thế ()

song = 'cold, cold heart'

replaced_song = song.replace('o', 'e')

# The original string is unchanged print('Original string:', song) print('Replaced string:', replaced_song) song = 'let it be, let it be, let it be' # maximum of 0 substring is replaced # returns copy of the original string

print(song.replace('let', 'so', 0))

Đầu ra

Original string: cold, cold heart
Replaced string: celd, celd heart
let it be, let it be, let it be

song = 'cold, cold heart'

# replacing 'cold' with 'hurt' print(song.replace('cold', 'hurt'))

song = 'Let it be, let it be, let it be, let it be'

# replacing only two occurences of 'let' print(song.replace('let', "don't let", 2))

9 hoạt động với
hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
0 hoặc
hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
1 nhưng không phải cả hai hỗn hợp.

Bạn có thể viết lại nó như thế này:

for s in (b'\f', b'\n', b'\r', b'\t', b'\v'): #strip whitespaces except space!
    text = text.replace(s, b'')

Bạn cũng có thể áp dụng

hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
2 hoạt động với loại
hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
1:

text = text.strip()  # remove all of the above + space

Cũng có thể: Chuyển đổi trở lại

hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
0 trước, cố gắng:

text = str(text)

hoặc

text = text.decode('utf-8')

(Chọn giải pháp tốt nhất để tránh sửa đổi gói của bên thứ ba, như Patrick lưu ý)

Nếu bạn đang tìm cách loại bỏ hoặc thay thế tất cả hoặc một phần của chuỗi trong Python, thì hướng dẫn này là dành cho bạn. Bạn sẽ lấy một bảng điểm phòng trò chuyện hư cấu và vệ sinh nó bằng cả phương thức

hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
5 và hàm
hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
6.
hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
5 method
and the
hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
6 function
.

Trong Python, phương pháp

hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
5 và hàm
hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
6 thường được sử dụng để làm sạch văn bản bằng cách loại bỏ các chuỗi hoặc chuỗi con hoặc thay thế chúng. Trong hướng dẫn này, bạn sẽ đóng vai trò là nhà phát triển cho một công ty cung cấp hỗ trợ kỹ thuật thông qua trò chuyện văn bản một-một. Bạn được giao nhiệm vụ tạo một tập lệnh mà sẽ vệ sinh trò chuyện, xóa bất kỳ dữ liệu cá nhân nào và thay thế bất kỳ từ chửi thề nào bằng biểu tượng cảm xúc.

Bạn chỉ đưa ra một bảng điểm trò chuyện rất ngắn:

str.replace(old, new [, count]) 
0

Mặc dù bảng điểm này ngắn, nhưng nó điển hình của loại trò chuyện mà các tác nhân có mọi lúc. Nó có số nhận dạng người dùng, tem thời gian ISO và tin nhắn.

Trong trường hợp này, khách hàng

hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
9 đã nộp đơn khiếu nại và chính sách của công ty là vệ sinh và đơn giản hóa bảng điểm, sau đó chuyển nó để đánh giá độc lập. Vệ sinh thông điệp là công việc của bạn!

Điều đầu tiên bạn muốn làm là chăm sóc bất kỳ từ chửi thề nào.

Cách xóa hoặc thay thế chuỗi python hoặc chuỗi con

Cách cơ bản nhất để thay thế một chuỗi trong Python là sử dụng phương thức chuỗi

hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
5:

>>>

str.replace(old, new [, count]) 
1

Như bạn có thể thấy, bạn có thể chuỗi

hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
5 lên bất kỳ chuỗi nào và cung cấp phương thức với hai đối số. Đầu tiên là chuỗi mà bạn muốn thay thế, và thứ hai là sự thay thế.

Bây giờ, thời gian để áp dụng kiến ​​thức này vào bảng điểm:

>>>

str.replace(old, new [, count]) 
2

Như bạn có thể thấy, bạn có thể chuỗi

hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
5 lên bất kỳ chuỗi nào và cung cấp phương thức với hai đối số. Đầu tiên là chuỗi mà bạn muốn thay thế, và thứ hai là sự thay thế.

>>>

str.replace(old, new [, count]) 
3

Như bạn có thể thấy, bạn có thể chuỗi

hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
5 lên bất kỳ chuỗi nào và cung cấp phương thức với hai đối số. Đầu tiên là chuỗi mà bạn muốn thay thế, và thứ hai là sự thay thế.

>>>

str.replace(old, new [, count]) 
4

Như bạn có thể thấy, bạn có thể chuỗi

hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
5 lên bất kỳ chuỗi nào và cung cấp phương thức với hai đối số. Đầu tiên là chuỗi mà bạn muốn thay thế, và thứ hai là sự thay thế.

Bây giờ, thời gian để áp dụng kiến ​​thức này vào bảng điểm:

Tải bảng điểm dưới dạng chuỗi được trích xuất ba và sau đó sử dụng phương thức

hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
5 trên một trong các từ chửi thề hoạt động tốt. Nhưng có một từ chửi thề khác mà không được thay thế bởi vì trong Python, chuỗi cần phải khớp chính xác:

  • Như bạn có thể thấy, ngay cả khi vỏ của một chữ cái không phù hợp, nó sẽ ngăn chặn bất kỳ sự thay thế nào. Điều này có nghĩa là nếu bạn sử dụng phương thức
    hurt, hurt heart
    Let it be, don't let it be, don't let it be, let it be
    5, bạn sẽ cần gọi nó là nhiều thời điểm với các biến thể. Trong trường hợp này, bạn chỉ có thể chuỗi trên một cuộc gọi khác đến
    hurt, hurt heart
    Let it be, don't let it be, don't let it be, let it be
    5:
  • Thành công! Nhưng bạn có thể nghĩ rằng đây không phải là cách tốt nhất để làm điều này cho một cái gì đó giống như một chất khử trùng phiên âm đa năng. Bạn sẽ muốn tiến tới một số cách để có một danh sách các thay thế, thay vì phải gõ
    hurt, hurt heart
    Let it be, don't let it be, don't let it be, let it be
    5 mỗi lần.

Thiết lập nhiều quy tắc thay thế

str.replace(old, new [, count]) 
5

Có một vài thay thế nữa mà bạn cần thực hiện cho bảng điểm để đưa nó vào một định dạng được chấp nhận để xem xét độc lập:

Rút ngắn hoặc loại bỏ tem thời gian

Thay thế tên người dùng bằng tác nhân và máy khách

str.replace(old, new [, count]) 
6

Bây giờ bạn bắt đầu có nhiều chuỗi để thay thế, chuỗi

hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
5 sẽ trở nên lặp đi lặp lại. Một ý tưởng có thể là giữ một danh sách các bộ dữ liệu, với hai mục trong mỗi bộ thuật. Hai mục sẽ tương ứng với các đối số mà bạn cần truyền vào phương thức
hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
5 Chuỗi để thay thế và chuỗi thay thế:

  • Trong phiên bản này của tập lệnh làm sạch bảng điểm của bạn, bạn đã tạo một danh sách các bộ dữ liệu thay thế, cung cấp cho bạn một cách nhanh chóng để thêm thay thế. Bạn thậm chí có thể tạo danh sách các bộ dữ liệu này từ một tệp CSV bên ngoài nếu bạn có vô số thay thế.
  • Sau đó, bạn lặp lại danh sách các bộ dữ liệu thay thế. Trong mỗi lần lặp, bạn gọi
    hurt, hurt heart
    Let it be, don't let it be, don't let it be, let it be
    5 trên chuỗi, điền vào các đối số với các biến
    song = 'cold, cold heart'
    

    replaced_song = song.replace('o', 'e')

    # The original string is unchanged print('Original string:', song) print('Replaced string:', replaced_song) song = 'let it be, let it be, let it be' # maximum of 0 substring is replaced # returns copy of the original string

    print(song.replace('let', 'so', 0))

    9 và
    Original string: cold, cold heart
    Replaced string: celd, celd heart
    let it be, let it be, let it be
    0 đã được giải nén từ mỗi bộ tuple thay thế.
  • Với điều này, bạn đã thực hiện một sự cải thiện lớn trong khả năng đọc tổng thể của bảng điểm. Nó cũng dễ dàng hơn để thêm thay thế nếu bạn cần. Chạy tập lệnh này cho thấy một bảng điểm sạch hơn nhiều:
  • Đó là một bảng điểm khá sạch. Có lẽ đó là tất cả những gì bạn cần. Nhưng nếu người tự động bên trong của bạn không vui, có lẽ đó là vì vì vẫn còn một số điều có thể làm phiền bạn:

Thay thế các từ chửi thề đã giành được công việc nếu có một biến thể khác bằng cách sử dụng -ing hoặc một vốn hóa khác, như vụ nổ.

Loại bỏ ngày từ tem thời gian hiện chỉ hoạt động vào ngày 24 tháng 8 năm 2022.

Loại bỏ dấu ấn toàn thời gian sẽ liên quan đến việc thiết lập các cặp thay thế cho mỗi thời gian có thể, không phải là thứ gì đó mà bạn quá quan tâm.regex.

Regex là một loại ngôn ngữ nhỏ được tạo thành từ các nhân vật xác định một mẫu. Các mẫu này, hoặc regexes, thường được sử dụng để tìm kiếm các chuỗi trong tìm và tìm và thay thế các hoạt động. Nhiều ngôn ngữ lập trình hỗ trợ Regex, và nó được sử dụng rộng rãi. Regex thậm chí sẽ cung cấp cho bạn siêu năng lực.

Trong Python, tận dụng Regex có nghĩa là sử dụng hàm

Original string: cold, cold heart
Replaced string: celd, celd heart
let it be, let it be, let it be
2 ____ ____ ____53 và xây dựng các mẫu regex của riêng bạn:

str.replace(old, new [, count]) 
7

Mặc dù bạn có thể trộn và kết hợp hàm

Original string: cold, cold heart
Replaced string: celd, celd heart
let it be, let it be, let it be
3 với phương thức
hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
5, ví dụ này chỉ sử dụng
Original string: cold, cold heart
Replaced string: celd, celd heart
let it be, let it be, let it be
3, do đó bạn có thể thấy cách sử dụng của nó. Bạn sẽ lưu ý rằng bạn có thể thay thế tất cả các biến thể của từ chửi thề bằng cách chỉ sử dụng một bộ thay thế ngay bây giờ. Tương tự, bạn chỉ sử dụng một regex cho tem toàn thời gian:

str.replace(old, new [, count]) 
8

Bây giờ bảng điểm của bạn đã được vệ sinh hoàn toàn, với tất cả nhiễu đã bị loại bỏ! Điều đó đã xảy ra như thế nào? Đó là sự kỳ diệu của Regex.

Mẫu Regex đầu tiên,

Original string: cold, cold heart
Replaced string: celd, celd heart
let it be, let it be, let it be
7, sử dụng ký tự đặc biệt
Original string: cold, cold heart
Replaced string: celd, celd heart
let it be, let it be, let it be
8, sẽ phù hợp với các ký tự chữ và số và gạch dưới. Thêm bộ định lượng
Original string: cold, cold heart
Replaced string: celd, celd heart
let it be, let it be, let it be
9 trực tiếp sau khi nó sẽ khớp với số 0 hoặc nhiều ký tự của
Original string: cold, cold heart
Replaced string: celd, celd heart
let it be, let it be, let it be
8.first regex pattern,
Original string: cold, cold heart
Replaced string: celd, celd heart
let it be, let it be, let it be
7, makes use of the
Original string: cold, cold heart
Replaced string: celd, celd heart
let it be, let it be, let it be
8 special character, which will match alphanumeric characters and underscores. Adding the
Original string: cold, cold heart
Replaced string: celd, celd heart
let it be, let it be, let it be
9 quantifier directly after it will match zero or more characters of
Original string: cold, cold heart
Replaced string: celd, celd heart
let it be, let it be, let it be
8.

Một phần quan trọng khác của mẫu đầu tiên là cờ

for s in (b'\f', b'\n', b'\r', b'\t', b'\v'): #strip whitespaces except space!
    text = text.replace(s, b'')
1 làm cho nó trở thành một mẫu không phân biệt chữ hoa chữ thường. Vì vậy, bây giờ, bất kỳ chất nền nào có chứa
for s in (b'\f', b'\n', b'\r', b'\t', b'\v'): #strip whitespaces except space!
    text = text.replace(s, b'')
2, bất kể vốn hóa, sẽ được khớp và thay thế.

Mẫu Regex thứ hai sử dụng các bộ ký tự và bộ định lượng để thay thế dấu thời gian. Bạn thường sử dụng các bộ ký tự và định lượng lại với nhau. Ví dụ, một mẫu regex của

for s in (b'\f', b'\n', b'\r', b'\t', b'\v'): #strip whitespaces except space!
    text = text.replace(s, b'')
3 sẽ khớp với một ký tự của
for s in (b'\f', b'\n', b'\r', b'\t', b'\v'): #strip whitespaces except space!
    text = text.replace(s, b'')
4,
for s in (b'\f', b'\n', b'\r', b'\t', b'\v'): #strip whitespaces except space!
    text = text.replace(s, b'')
5 hoặc
for s in (b'\f', b'\n', b'\r', b'\t', b'\v'): #strip whitespaces except space!
    text = text.replace(s, b'')
6. Đặt một
Original string: cold, cold heart
Replaced string: celd, celd heart
let it be, let it be, let it be
9 trực tiếp sau khi nó phù hợp với số 0 hoặc nhiều ký tự của
for s in (b'\f', b'\n', b'\r', b'\t', b'\v'): #strip whitespaces except space!
    text = text.replace(s, b'')
4,
for s in (b'\f', b'\n', b'\r', b'\t', b'\v'): #strip whitespaces except space!
    text = text.replace(s, b'')
5 hoặc
for s in (b'\f', b'\n', b'\r', b'\t', b'\v'): #strip whitespaces except space!
    text = text.replace(s, b'')
6.second regex pattern uses character sets and quantifiers to replace the time stamp. You often use character sets and quantifiers together. A regex pattern of
for s in (b'\f', b'\n', b'\r', b'\t', b'\v'): #strip whitespaces except space!
    text = text.replace(s, b'')
3, for example, will match one character of
for s in (b'\f', b'\n', b'\r', b'\t', b'\v'): #strip whitespaces except space!
    text = text.replace(s, b'')
4,
for s in (b'\f', b'\n', b'\r', b'\t', b'\v'): #strip whitespaces except space!
    text = text.replace(s, b'')
5, or
for s in (b'\f', b'\n', b'\r', b'\t', b'\v'): #strip whitespaces except space!
    text = text.replace(s, b'')
6. Putting a
Original string: cold, cold heart
Replaced string: celd, celd heart
let it be, let it be, let it be
9 directly after it would match zero or more characters of
for s in (b'\f', b'\n', b'\r', b'\t', b'\v'): #strip whitespaces except space!
    text = text.replace(s, b'')
4,
for s in (b'\f', b'\n', b'\r', b'\t', b'\v'): #strip whitespaces except space!
    text = text.replace(s, b'')
5, or
for s in (b'\f', b'\n', b'\r', b'\t', b'\v'): #strip whitespaces except space!
    text = text.replace(s, b'')
6.

Có nhiều bộ định lượng, mặc dù. Nếu bạn đã sử dụng

text = text.strip()  # remove all of the above + space
1, nó sẽ khớp với chính xác mười ký tự của
for s in (b'\f', b'\n', b'\r', b'\t', b'\v'): #strip whitespaces except space!
    text = text.replace(s, b'')
4,
for s in (b'\f', b'\n', b'\r', b'\t', b'\v'): #strip whitespaces except space!
    text = text.replace(s, b'')
5 hoặc
for s in (b'\f', b'\n', b'\r', b'\t', b'\v'): #strip whitespaces except space!
    text = text.replace(s, b'')
6 theo bất kỳ thứ tự nào và bất kỳ kết hợp nào. Cũng lưu ý rằng các ký tự lặp lại là dự phòng, vì vậy
text = text.strip()  # remove all of the above + space
5 tương đương với
text = text.strip()  # remove all of the above + space
6.

Đối với dấu thời gian, bạn sử dụng một bộ ký tự mở rộng là

text = text.strip()  # remove all of the above + space
7 để phù hợp với tất cả các ký tự có thể mà bạn có thể tìm thấy trong dấu thời gian. Được kết hợp với bộ định lượng
text = text.strip()  # remove all of the above + space
8, điều này sẽ phù hợp với bất kỳ dấu thời gian nào có thể, ít nhất là cho đến năm 10.000.

Mẫu Regex thời gian cho phép bạn chọn bất kỳ ngày nào có thể trong định dạng tem thời gian. Nhìn thấy The Times aren quan trọng đối với người đánh giá độc lập của các bảng điểm này, bạn thay thế chúng bằng một chuỗi trống. Nó có thể viết một regex tiên tiến hơn để bảo tồn thông tin thời gian trong khi xóa ngày.

Mẫu Regex thứ ba được sử dụng để chọn bất kỳ chuỗi người dùng nào bắt đầu bằng từ khóa

text = text.strip()  # remove all of the above + space
9. Lưu ý rằng bạn thoát (
text = str(text)
0) khung vuông (
text = str(text)
1) bởi vì nếu không, từ khóa sẽ được hiểu là một bộ ký tự.third regex pattern is used to select any user string that starts with the keyword
text = text.strip()  # remove all of the above + space
9. Note that you escape (
text = str(text)
0) the square bracket (
text = str(text)
1) because otherwise the keyword would be interpreted as a character set.

Cuối cùng, mẫu Regex cuối cùng chọn chuỗi tên người dùng máy khách và thay thế nó bằng

text = str(text)
2.last regex pattern selects the client username string and replaces it with
text = str(text)
2.

Với Regex, bạn có thể cắt giảm đáng kể số lượng thay thế mà bạn phải viết ra. Điều đó nói rằng, bạn vẫn có thể phải đưa ra nhiều mẫu. Nhìn thấy Regex không phải là ngôn ngữ dễ đọc nhất, có rất nhiều mẫu có thể nhanh chóng trở nên khó duy trì.

Rất may, có một mẹo gọn gàng với

hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
6 cho phép bạn có quyền kiểm soát nhiều hơn một chút về cách thức hoạt động thay thế và nó cung cấp một kiến ​​trúc có thể duy trì hơn nhiều.

Sử dụng một cuộc gọi lại với hurt, hurt heart Let it be, don't let it be, don't let it be, let it be6 để kiểm soát nhiều hơn

Một thủ thuật mà Python và

Original string: cold, cold heart
Replaced string: celd, celd heart
let it be, let it be, let it be
3 có tay áo của họ là bạn có thể vượt qua chức năng gọi lại thay vì chuỗi thay thế. Điều này cung cấp cho bạn toàn quyền kiểm soát cách kết hợp và thay thế.

Để bắt đầu xây dựng phiên bản này của tập lệnh phiên bản phiên âm, bạn sẽ sử dụng mẫu Regex cơ bản để xem cách sử dụng cuộc gọi lại với

Original string: cold, cold heart
Replaced string: celd, celd heart
let it be, let it be, let it be
3 hoạt động:

str.replace(old, new [, count]) 
9

Mẫu regex mà bạn sử dụng sẽ phù hợp với các tem thời gian và thay vì cung cấp một chuỗi thay thế, bạn đã chuyển qua một tham chiếu đến hàm

text = str(text)
7. Bây giờ, khi
Original string: cold, cold heart
Replaced string: celd, celd heart
let it be, let it be, let it be
3 tìm thấy một trận đấu, nó sẽ gọi
text = str(text)
7 với một đối tượng khớp như một đối số.

text = str(text)
7 chỉ in đối tượng mà nó nhận được dưới dạng đối số, khi chạy nó, bạn sẽ thấy các đối tượng phù hợp được in vào bảng điều khiển:

song = 'cold, cold heart'

# replacing 'cold' with 'hurt' print(song.replace('cold', 'hurt'))

song = 'Let it be, let it be, let it be, let it be'

# replacing only two occurences of 'let' print(song.replace('let', "don't let", 2))

0

Một đối tượng khớp là một trong các khối xây dựng của mô -đun

Original string: cold, cold heart
Replaced string: celd, celd heart
let it be, let it be, let it be
2. Hàm
text = text.decode('utf-8')
2 cơ bản hơn trả về một đối tượng khớp.
Original string: cold, cold heart
Replaced string: celd, celd heart
let it be, let it be, let it be
3 không trả lại bất kỳ đối tượng phù hợp nào nhưng sử dụng chúng đằng sau hậu trường.

Bởi vì bạn nhận được đối tượng Trận đấu này trong cuộc gọi lại, bạn có thể sử dụng bất kỳ thông tin nào có trong đó để xây dựng chuỗi thay thế. Khi nó được xây dựng, bạn trả về chuỗi mới và

Original string: cold, cold heart
Replaced string: celd, celd heart
let it be, let it be, let it be
3 sẽ thay thế trận đấu bằng chuỗi được trả về.

Áp dụng cuộc gọi lại cho tập lệnh

Trong tập lệnh mã hóa bản phiên mã của bạn, bạn sẽ sử dụng phương thức

text = text.decode('utf-8')
5 của đối tượng khớp để trả về nội dung của hai nhóm chụp, sau đó bạn có thể vệ sinh từng phần trong chức năng của chính nó hoặc loại bỏ nó:

song = 'cold, cold heart'

# replacing 'cold' with 'hurt' print(song.replace('cold', 'hurt'))

song = 'Let it be, let it be, let it be, let it be'

# replacing only two occurences of 'let' print(song.replace('let', "don't let", 2))

1

Thay vì có nhiều regexes khác nhau, bạn có thể có một regex cấp cao nhất có thể khớp với toàn bộ dòng, chia nó thành các nhóm chụp với giá đỡ (

text = text.decode('utf-8')
6). Các nhóm bắt giữ không có tác dụng đối với quá trình đối sánh thực tế, nhưng chúng ảnh hưởng đến đối tượng đối sánh kết quả từ trận đấu:

  • text = text.decode('utf-8')
    
    7 khớp với bất kỳ chuỗi ký tự nào được bọc trong ngoặc vuông. Nhóm chụp chọn ra chuỗi tên người dùng, ví dụ
    hurt, hurt heart
    Let it be, don't let it be, don't let it be, let it be
    9.
  • text = text.decode('utf-8')
    
    9 phù hợp với dấu thời gian mà bạn đã khám phá trong phần cuối. Vì bạn đã giành chiến thắng khi sử dụng dấu thời gian trong bảng điểm cuối cùng, nên nó không bị bắt bằng dấu ngoặc.
  • str.replace(old, new [, count]) 
    00 khớp với một đại tràng theo nghĩa đen. Đại tràng được sử dụng làm phân tách giữa siêu dữ liệu thông điệp và chính thông điệp.
  • str.replace(old, new [, count]) 
    01 khớp với bất kỳ chuỗi ký tự nào cho đến khi kết thúc dòng, đó sẽ là thông điệp.

Nội dung của các nhóm bị bắt sẽ có sẵn dưới dạng các mục riêng biệt trong đối tượng khớp bằng cách gọi phương thức

text = text.decode('utf-8')
5, trả về một bộ của các chuỗi phù hợp.

Hai nhóm là chuỗi người dùng và thông báo. Phương pháp

text = text.decode('utf-8')
5 trả về chúng như một bộ chuỗi. Trong hàm
text = str(text)
7, trước tiên bạn sử dụng giải nén để gán hai chuỗi cho các biến:

song = 'cold, cold heart'

# replacing 'cold' with 'hurt' print(song.replace('cold', 'hurt'))

song = 'Let it be, let it be, let it be, let it be'

# replacing only two occurences of 'let' print(song.replace('let', "don't let", 2))

2

Lưu ý cách kiến ​​trúc này cho phép một regex rất rộng và bao gồm ở cấp cao nhất, và sau đó cho phép bạn bổ sung nó với các regexes chính xác hơn trong cuộc gọi lại thay thế.

Hàm

text = str(text)
7 sử dụng hai chức năng để làm sạch tên người dùng và các từ xấu. Nó cũng sử dụng các chuỗi F để biện minh cho các tin nhắn. Lưu ý cách
str.replace(old, new [, count]) 
06 sử dụng Regex được tạo động trong khi
str.replace(old, new [, count]) 
07 dựa vào xử lý chuỗi cơ bản hơn.

Đây bây giờ trông giống như một nguyên mẫu đầu tiên tốt cho một kịch bản phiên dịch phiên mã! Đầu ra là Slequeaky Clean:

song = 'cold, cold heart'

# replacing 'cold' with 'hurt' print(song.replace('cold', 'hurt'))

song = 'Let it be, let it be, let it be, let it be'

# replacing only two occurences of 'let' print(song.replace('let', "don't let", 2))

3

Tốt đẹp! Sử dụng

Original string: cold, cold heart
Replaced string: celd, celd heart
let it be, let it be, let it be
3 với một cuộc gọi lại giúp bạn linh hoạt hơn nhiều để trộn và kết hợp các phương thức khác nhau và xây dựng các regexes một cách linh hoạt. Cấu trúc này cũng cung cấp cho bạn nhiều phòng nhất để phát triển khi sếp hoặc khách hàng của bạn chắc chắn thay đổi yêu cầu của họ đối với bạn!

Bản tóm tắt

Trong hướng dẫn này, bạn đã học được cách thay thế các chuỗi trong Python. Trên đường đi, bạn đã đi từ việc sử dụng phương thức chuỗi Python

hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
5 cơ bản để sử dụng các cuộc gọi lại với
hurt, hurt heart
Let it be, don't let it be, don't let it be, let it be
6 để điều khiển tuyệt đối. Bạn cũng đã khám phá một số mẫu Regex và giải mã chúng thành một kiến ​​trúc tốt hơn để quản lý một kịch bản thay thế.

Với tất cả kiến ​​thức đó, bạn đã làm sạch thành công một bảng điểm trò chuyện, hiện đã sẵn sàng để xem xét độc lập. Không chỉ vậy, mà kịch bản phiên âm của bạn có rất nhiều chỗ để phát triển.

Thay thế () làm gì trong Python?

Phương thức python String thay thế () Phương thức thay thế () thay thế một cụm từ được chỉ định bằng một cụm từ được chỉ định khác. Lưu ý: Tất cả các lần xuất hiện của cụm từ được chỉ định sẽ được thay thế, nếu không có gì khác được chỉ định.replaces a specified phrase with another specified phrase. Note: All occurrences of the specified phrase will be replaced, if nothing else is specified.

Làm thế nào để bạn thay thế các chữ cái trong Python?

Phương thức python forth () được sử dụng để tìm và thay thế các ký tự trong một chuỗi.Nó yêu cầu một chuỗi con phải được thông qua như một đối số;Các chức năng tìm thấy và thay thế nó.Phương thức thay thế () thường được sử dụng trong làm sạch dữ liệu.. It requires a substring to be passed as an argument; the function finds and replaces it. The replace() method is commonly used in data cleaning.

Phương thức thay thế () là gì?

Phương thức thay thế () trả về một chuỗi mới với một, một số hoặc tất cả các kết quả của một mẫu được thay thế bằng cách thay thế.Mẫu có thể là một chuỗi hoặc một regexp và thay thế có thể là một chuỗi hoặc một hàm được gọi cho mỗi trận đấu.Nếu mẫu là một chuỗi, chỉ có sự xuất hiện đầu tiên sẽ được thay thế.returns a new string with one, some, or all matches of a pattern replaced by a replacement . The pattern can be a string or a RegExp , and the replacement can be a string or a function called for each match. If pattern is a string, only the first occurrence will be replaced.

Làm thế nào để bạn thay thế một nhân vật đặc biệt trong Python?

Phương thức thay thế () được sử dụng để thay thế các ký tự đặc biệt bằng các ký tự trống hoặc giá trị null.Các biểu thức chính quy được sử dụng để phù hợp với các mẫu ký tự đặc biệt và xóa các ký tự đặc biệt trong Python. is used to replace special characters with empty characters or null values. Regular expressions are used to match patterns of special characters and remove special characters in python.