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 banana2
Contoh 1. Harus mengganti "An" atau "an" dengan "one"
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
- 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 banana5
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 avocado0 - “[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