Pada artikel ini, kita akan membahas lima cara berbeda untuk menghapus semua kemunculan karakter dari sebuah string dengan python
String tidak dapat diubah dalam python, oleh karena itu setelah objek string dibuat, kita tidak dapat memodifikasinya. Tapi kita bisa membuat salinan string dengan konten yang dimodifikasi atau difilter dan kemudian menetapkannya kembali ke variabel asli. Ini akan memberi kita efek bahwa kita telah menghapus konten dari string. Mari gunakan logika ini untuk menghapus semua kemunculan karakter dari string dengan python
Hapus semua instance karakter dari string menggunakan replace()
Dalam python, kelas string menyediakan anggota untuk mengganti sub-string dalam string i. e
str.replace(to_be_replaced, replacement)Ini menerima dua argumen i. e. string yang akan diganti dan string pengganti. Ini mengembalikan salinan objek string pemanggil tetapi dengan konten yang diubah i. e. setelah mengganti semua kemunculan sub-string to_be_replaced dengan string pengganti
Untuk menggunakan fungsi replace() untuk menghapus semua instance karakter dari string, kita perlu meneruskan karakter yang diberikan sebagai argumen pertama dan string kosong sebagai argumen kedua dalam fungsi replace(). Sebagai contoh,
Iklan
sample_str = 'This is a sample string' single_char = 's' # Remove all instances of character 's' from the string sample_str = sample_str.replace(single_char, "") print(sample_str)_Keluaran
Thi i a ample tringItu menghapus semua contoh karakter 's' dari string
Hapus semua instance karakter dari string menggunakan translate()
Dalam Python, kelas string menyediakan fungsi anggota translate(). Itu menerima tabel terjemahan sebagai argumen dan mengganti karakter dalam string berdasarkan pemetaan di tabel terjemahan. Kita dapat membuat tabel terjemahan, dimana karakter yang akan dihapus akan dipetakan ke string kosong i. e. ”. Misalkan kita ingin menghapus semua kemunculan karakter 's' dari string, sehingga tabel terjemahannya akan menjadi seperti ini,
Jumlah ascii 's'. ”
Kami akan meneruskan tabel terjemahan ini ke fungsi translate() sebagai argumen. Karena itu fungsi translate() akan mengganti semua kemunculan karakter 's' dengan string kosong. Pada dasarnya itu akan menghapus semua kemunculan karakter 's' dari string. Sebagai contoh,
sample_str = 'This is a sample string' single_char = 's' # Remove all instances of character 's' from the string sample_str = sample_str.translate({ord(single_char): None}) print(sample_str)Keluaran
Thi i a ample tringItu menghapus semua contoh karakter 's' dari string
Hapus semua contoh karakter dari string menggunakan regex
Di Python, modul regex menyediakan fungsi untuk mengganti konten string berdasarkan pola regex yang cocok. Tanda tangan fungsinya seperti ini,
sub(pattern, replacement_str, original_str)Kita dapat menggunakan ini untuk menghapus semua contoh karakter dari sebuah string. Untuk ini, kita perlu meneruskan pola regex yang cocok dengan semua kejadian dari karakter yang diberikan. Selain itu, sebagai string pengganti kita perlu melewatkan string kosong. Sebagai contoh, mari kita lihat cara menghapus semua kemunculan karakter 's' dari sebuah string menggunakan regex,
Keluaran
Thi i a ample tringItu menghapus semua contoh karakter 's' dari string
Hapus semua instance karakter dari string menggunakan filter() dan join()
Di Python, Anda bisa menggunakan fungsi filter() untuk memfilter semua kemunculan karakter dari sebuah string. Langkah-langkahnya adalah sebagai berikut,
- Buat fungsi lambda, yang menerima karakter sebagai argumen dan mengembalikan True jika karakter yang diteruskan cocok dengan karakter yang akan dihapus
- Lewati fungsi lambda ini sebagai argumen bersyarat ke fungsi filter() bersama dengan string yang akan dimodifikasi
- fungsi filter() mengulangi semua karakter string dan hanya menghasilkan karakter yang fungsi lambda mengembalikan True i. e. semua karakter kecuali karakter yang akan dihapus
- Gunakan fungsi join() untuk menggabungkan semua karakter yang dihasilkan yang dikembalikan oleh fungsi filter()
- Tetapkan kembali string yang dikembalikan oleh fungsi join() ke variabel asli. Ini akan memberi efek bahwa kami telah menghapus semua kemunculan karakter tertentu dari string
Sebagai contoh,
sample_str = 'This is a sample string' # Remove all instances of character 's' from the string single_char = 's' # Create a list of all characters in string except the character 's' filtered_chars = filter(lambda ch: ch != single_char, sample_str) # Join back the filtered characters in list to create a string sample_str = ''.join(filtered_chars) print(sample_str)_Keluaran
Thi i a ample tringItu menghapus semua contoh karakter 's' dari string
Hapus semua contoh karakter dari string menggunakan pemahaman Daftar dan gabung ()
Ulangi semua karakter string menggunakan pemahaman daftar dan buat daftar semua karakter string kecuali karakter yang akan dihapus. Kemudian dengan menggunakan fungsi join(), gabungkan semua karakter yang tersisa. Kemudian tetapkan kembali string yang dikembalikan oleh fungsi join() ke variabel asli. Ini akan memberi efek bahwa kami telah menghapus semua kemunculan karakter tertentu dari string