Catatan. Jika hitungan tidak ditentukan, metode replace() mengganti semua kemunculan substring lama dengan string baru
replace() Mengembalikan Nilai
Metode replace()_ mengembalikan salinan string tempat substring lama diganti dengan string baru. String asli tetap tidak berubah
❮ Metode Untaian
Contoh
Ganti kata "pisang"
txt = "Saya suka pisang"
x = txt. ganti ("pisang", "apel")
cetak(x)
Cobalah sendiri "Definisi dan Penggunaan
Metode replace()_ menggantikan frase tertentu dengan frase lain yang ditentukan
Catatan. Semua kemunculan frasa yang ditentukan akan diganti, jika tidak ada lagi yang ditentukan
Sintaksis
rangkaian. ganti (nilai lama, nilai baru, hitung)
Nilai Parameter
ParameterDeskripsinilailamaDiperlukan. String untuk mencari nilai baruDiperlukan. String untuk mengganti nilai lama dengan countOptional. Angka yang menentukan berapa banyak kemunculan nilai lama yang ingin Anda ganti. Default adalah semua kejadianLebih Banyak Contoh
Contoh
Ganti semua kemunculan kata "satu"
txt = "satu satu kuda pacuan, dua dua satu juga. "
x = txt. ganti ("satu", "tiga")
cetak(x)
Cobalah sendiri "Contoh
Ganti dua kemunculan pertama dari kata "satu"
txt = "satu satu kuda pacuan, dua dua satu juga. "
x = txt. ganti ("satu", "tiga", 2)
cetak(x)
Cobalah sendiri "❮ Metode Untaian
String adalah sekelompok karakter yang dapat digunakan untuk mewakili satu kata atau seluruh frase. Dalam string Python tidak memerlukan deklarasi eksplisit dan dapat didefinisikan dengan atau tanpa specifier oleh karena itu, mudah untuk menggunakannya
Python memiliki berbagai fungsi dan metode bawaan untuk memanipulasi dan mengakses string. Karena semua yang ada di Python adalah objek, string adalah objek dari kelas String, yang memiliki beberapa metode
Pada artikel ini, kita akan fokus mengganti semua kemunculan string dengan string lain di python
Menggunakan metode replace()
Metode replace() dari kelas string menerima nilai string sebagai input dan mengembalikan string yang dimodifikasi sebagai output. Ini memiliki 2 parameter wajib dan 1 parameter opsional. Berikut adalah sintaks dari metode ini
string.replace(oldvalue, newvalue, count)di mana,
Nilai lama − Substring yang ingin Anda ganti
Nilai baru − Ini mewakili substring yang ingin Anda ganti
Hitung − Ini adalah parameter opsional;
Contoh 1
Dalam program yang diberikan di bawah ini, kami mengambil string input dan dengan menggunakan metode ganti kami mengganti huruf "t" dengan "d"
str1 = "Welcome to tutorialspoint" print("The given string is") print(str1) print("After replacing t with d") print(str1.replace("t","d"))
_Keluaran
Keluaran dari program di atas adalah,
The given string is Welcome to tutorialspoint After replacing t with d Welcome do dudorialspoindContoh 2
Dalam program yang diberikan di bawah ini, kami mengambil string input yang sama dan kami mengganti huruf "t" dengan "d" menggunakan metode replace(), tetapi dalam contoh ini kami menggunakan parameter hitungan sebagai 2. Jadi hanya 2 penampilan t yang dikonversi
str1 = "Welcome to tutorialspoint" print("The given string is") print(str1) print("After replacing t with d for 2 times") print(str1.replace("t","d",2))
Keluaran
Keluaran dari program di atas adalah,
The given string is Welcome to tutorialspoint After replacing t with d for 2 times Welcome do dutorialspoint _Menggunakan ekspresi reguler
Kita juga bisa menggunakan ekspresi reguler Python untuk mengganti semua kemunculan string dengan string lain. Metode sub() dari python re menggantikan huruf yang ada dalam string yang diberikan dengan huruf baru. Berikut ini adalah sintaks dari metode ini -
re.sub(old, new, string);Lama − Sub string yang ingin Anda ganti
Baru − Sub string baru yang ingin Anda ganti
String − String sumber
Contoh
Dalam contoh yang diberikan di bawah ini, kami mengulangi string dan mencocokkan setiap karakter dan menggantinya
Jika kita ingin mengganti substring dengan kemunculan pertama saja, kita dapat menyebutkan count =1. Demikian pula, untuk dua kemunculan pertama, kita dapat menyebutkan count=2
s1="one apple,two orange,two banana"s2=s1.replace("two","one",1)
print (s2)
#Output:one apple,one orange,two banana_3. Penggantian case-insensitive
Menggunakan 're. sub()'
Sintaksis
s1="one apple,two orange,two banana"
s2=s1.replace("two","one",1)
print (s2)
#Output:one apple,one orange,two banana_1
Dengan menyebutkan s1="one apple,two orange,two banana"
s2=s1.replace("two","one",1)
print (s2)
#Output:one apple,one orange,two banana_2
Contoh 1. Harus mengganti "An" atau "an" dengan "one"
s1="An apple,an avocado"
pattern = re.compile('an', re.IGNORECASE)
s2=pattern.sub("one",s1)
print (s2)
#Output:one apple,one avocado_
- s1="one apple,two orange,two banana"
s2=s1.replace("two","one",1)
print (s2)
#Output:one apple,one orange,two banana3 → menentukan pola yang cocok dengan substring “an”. Bendera disetel sebagai ulang. IGNORECASE yang artinya tidak peka huruf besar-kecil. Ini akan cocok dengan substring “an”, “AN”, “An”. - s1="one apple,two orange,two banana"
s2=s1.replace("two","one",1)
print (s2)
#Output:one apple,one orange,two banana4 →Mengganti pola yang cocok dengan "satu" untuk string "s1"
Contoh 2. Melakukan penggantian case-insensitive dengan menggunakan re. subn()
Menggunakan 're. subn()’
Sintaksis. s1="one apple,two orange,two banana"
s2=s1.replace("two","one",1)
print (s2)
#Output:one apple,one orange,two banana_5
Sama seperti ulang. sub(), tetapi akan mengembalikan tuple (new_string, number_of_subs_made)
Jika kita ingin mengetahui jumlah pergantian pemain, re. subn() dapat digunakan
import res1="An apple,an avocado"
pattern = re.compile('an', re.IGNORECASE)
s2=pattern.subn("one",s1)
print (s2)
#Output:('one apple,one avocado', 2)
- s1="one apple,two orange,two banana"
s2=s1.replace("two","one",1)
print (s2)
#Output:one apple,one orange,two banana6 → Mengembalikan string yang dimodifikasi dan jumlah penggantian yang dilakukan
Contoh 1. Untuk mengganti "an" dengan "satu". Tapi itu seharusnya tidak menggantikan bagian kata
Jika kita menggunakan str. replace(), “an” di dalam “oranye” juga diganti
s1="an apple,an orange"s2=s1.replace("an","one")
print(s2)
#Output:one apple,one oronege
Untuk menghindari penggantian suku cadang dengan kata-kata, re. sub() dapat digunakan
import res1="an apple,an orange"
pattern = re.compile(r'\ban\b')
s2=pattern.sub("one",s1)
print (s1)
#Output:an apple,an orange
- s1="one apple,two orange,two banana"
s2=s1.replace("two","one",1)
print (s2)
#Output:one apple,one orange,two banana7 → \b cocok dengan string kosong. Karena '\ban\b' cocok dengan string kosong sebelum dan sesudah "an", ini akan menghindari penggantian bagian kata. Jadi 'an' di dalam 'oranye' tidak diganti
Contoh 1. Ganti "jam", "jam" menjadi "Jam"
import res1="hr,hour"
pattern = re.compile('(hr|hour)')
s2=pattern.sub("Hours",s1)
print (s2)
#Output:Hours,Hours
- s1="one apple,two orange,two banana"
s2=s1.replace("two","one",1)
print (s2)
#Output:one apple,one orange,two banana_8 - () →grup
- → baik atau
- '(jam. jam)’ → cocok dengan “jam” atau “jam”
Contoh. Ganti @,#,$,% dengan '-'
import re
s1="1@2#3$4%5"
s2=re.sub("[@#$%]","-",s1)
print (s2)
- s1="one apple,two orange,two banana"
s2=s1.replace("two","one",1)
print (s2)
#Output:one apple,one orange,two banana_9
[] → digunakan untuk menunjukkan sekumpulan karakter - “[@#$%]” → pola cocok dengan salah satu karakter yang disebutkan dalam []
- ulang. sub(“[@#$%]”,”-”,s1) → karakter yang cocok kemudian diganti dengan '-'
import re
s1="1.99,2.999,3.9999"
import re
s2=re.sub("[9]+","0",s1)
print (s2)
#Output:1.0,2.0,3.0
- import re
s1="An apple,an avocado"
pattern = re.compile('an', re.IGNORECASE)
s2=pattern.sub("one",s1)
print (s2)
#Output:one apple,one avocado_0 - “[9]+” → Ini akan cocok dengan satu atau lebih kemunculan 9
- + → cocokkan satu atau lebih kemunculan karakter yang disebutkan
- import re
s1="An apple,an avocado"
pattern = re.compile('an', re.IGNORECASE)
s2=pattern.sub("one",s1)
print (s2)
#Output:one apple,one avocado1 → Mengganti satu atau lebih kemunculan 'import re
s1="An apple,an avocado"
pattern = re.compile('an', re.IGNORECASE)
s2=pattern.sub("one",s1)
print (s2)
#Output:one apple,one avocado2' dengan 'import re
s1="An apple,an avocado"
pattern = re.compile('an', re.IGNORECASE)
s2=pattern.sub("one",s1)
print (s2)
#Output:one apple,one avocado3' dalam string s1
Menggunakan 're. subn()
import res1="1.99,2.999,3.9999"
import re
s2=re.subn("[9]+","0",s1)
print (s2)
#Output:('1.0,2.0,3.0', 3)
Takeaway
- Untuk mengganti string tetap, str. ganti() dapat digunakan. Ini jauh lebih cepat jika dibandingkan dengan modul ulang
- Jika pola tertentu perlu diganti, maka re. sub() atau re,subn() dapat digunakan
- Semua metode yang disebutkan di atas akan mengganti karakter dari string dan mengembalikan string baru. Itu tidak akan mengubah string asli
Blog saya yang lain terkait dengan metode string
Hapus Spasi Putih dari String dengan Python
Menggunakan metode string dan regex dengan Python
naik tingkat. terhubung. com
5 Cara Menemukan Indeks Substring dengan Python
Menggunakan metode string dan regex dengan Python
pemrograman yang lebih baik. pub
5 Cara Berbeda untuk Menghapus Karakter Tertentu Dari String dengan Python
Menggunakan metode string, filter, dan regex
pemrograman yang lebih baik. pub
split() vs. partisi() dalam String Python
Apa bedanya?
pemrograman yang lebih baik. pub
Tonton ruang ini untuk lebih banyak artikel tentang Python dan Ilmu Data. Jika Anda ingin membaca lebih banyak tutorial saya, ikuti saya di Medium, LinkedIn, Twitter