Artikel ini akan membahas berbagai cara untuk menghapus semua karakter dari sebuah string setelah karakter tertentu di Python
Daftar isi
Misalkan kita memiliki string,
"The Last-Warrior"Sekarang, kami ingin menghapus semua karakter setelah karakter '-' dari string ini, termasuk karakter '-'. String terakhir harus seperti,
"The Last" _Ada berbagai cara untuk melakukan ini. Mari kita bahas satu per satu
Iklan
Hapus semuanya setelah karakter dalam string menggunakan split()
Di Python, kelas string menyediakan fungsi split(). Ini menerima dua argumen i. e. nilai pemisahan dan maks split. Berdasarkan pemisah, itu membagi string menjadi bagian yang berbeda. Batas maksimum dari bagian-bagian ini dapat ditentukan sebagai argumen kedua dari fungsi split()
Untuk menghapus semuanya setelah kemunculan pertama karakter '-' dalam sebuah string, berikan karakter '-' sebagai pemisah dan 1 sebagai nilai pemisahan maksimal. Fungsi split('-', 1) akan membagi string menjadi 2 bagian,
- Bagian 1 harus berisi semua karakter sebelum kemunculan pertama karakter '-'
- Bagian 2 harus berisi semua karakter setelah kemunculan pertama karakter '-'
Kemudian tetapkan bagian 1 ke variabel string asli. Ini akan memberi efek bahwa kita telah menghapus semuanya setelah karakter '-' dalam sebuah string
Sebagai contoh,
strValue = "The Last-Warrior" ch = '-' # Remove all characters after the character '-' from string strValue = strValue.split(ch, 1)[0] print(strValue)Keluaran
The LastItu menghapus semuanya setelah karakter '-' dari string
Hapus semuanya setelah karakter dalam string menggunakan partisi()
Dalam Python, kelas string menyediakan fungsi partisi(sep). Itu menerima pemisah sebagai argumen dan membagi string menjadi tiga bagian berdasarkan pemisah yang diberikan. Ini akan mencari kejadian pemisah pertama dan mengembalikan 3-tuple yang berisi bagian sebelum pemisah, pemisah, dan bagian setelah pemisah
Untuk menghapus semuanya setelah kemunculan pertama karakter '-' dalam sebuah string, berikan karakter '-' sebagai pemisah dalam fungsi partisi (). Kemudian tetapkan bagian sebelum pemisah ke variabel string asli. Ini akan mempengaruhi bahwa kami telah menghapus semuanya setelah karakter '-' dalam sebuah string
Sebagai contoh,
strValue = "The Last-Warrior" ch = '-' # Remove all characters after the character '-' from string before, sep, after = strValue.partition('-') strValue = before print(strValue)_Keluaran
The LastItu menghapus semuanya setelah karakter '-' dari string
Hapus semuanya setelah karakter dalam 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) _Itu mencari kecocokan dari pola regex yang diberikan di sengatan original_str dan mengganti semua kemunculan kecocokan dengan string replacement_str
Kita dapat menggunakan ini untuk menghapus semuanya setelah kemunculan pertama karakter '-' dalam sebuah string. Kami membutuhkan "-. *” sebagai pola regex dan string kosong sebagai string pengganti
Sebagai contoh,
import re strValue = "The Last-Warrior" ch = '-' # The Regex pattern to match al characters on and after '-' pattern = ch + ".*" # Remove all characters after the character '-' from string strValue = re.sub(pattern, '', strValue ) print(strValue)Keluaran
The LastItu menghapus semuanya setelah karakter '-' dari string
Hapus semuanya setelah karakter dalam string menggunakan operator subskrip
Cari posisi indeks kemunculan pertama karakter '-' dalam string dan pilih substring dari awal hingga posisi indeks tersebut. Jika karakter '-' tidak ada dalam string, maka akan memunculkan ValueError
Kelas replace() dari string dapat digunakan untuk mengganti karakter dari string dengan karakter lain. Jadi Dimungkinkan untuk menghapus karakter dari string dengan mengganti karakter itu dengan string kosong i. e. ”. Dengan cara ini, kita dapat menghapus karakter tertentu
Sintaksis
Iklan
Di mana,
- input_str adalah string input
Parameter
- ch adalah karakter yang perlu dihapus dari string
- String kosong, yang akan digunakan sebagai pengganti
Ini akan mengembalikan salinan string input_str setelah menghapus semua kemunculan karakter yang ditentukan darinya
Contoh
Dalam contoh ini, kami akan menghapus
- Semua kemunculan karakter – c
- Semua kemunculan karakter W
Keluaran
Welcome to thispointer elome to thispointerKita dapat melihat bahwa karakter – “c” dan “W” dihapus dari string
Hapus karakter tertentu dari string menggunakan terjemahan ()
Kita dapat menghapus karakter tertentu dari sebuah string menggunakan metode translate(). Dibutuhkan kamus sebagai argumen. Pada kamus tersebut kita akan memetakan nilai ascii dari karakter yang akan dihapus dengan None. Ini akan menghapus semua kemunculan karakter itu dari string
Sintaksis
input_str.translate({ord(character): None})Di mana input_str adalah string input
Contoh
Dalam contoh ini, kami akan menghapus
- karakter-e
- karakter-r
- karakter-i
- karakter-t
- karakter-p
Keluaran
After deleting character-e: Wlcom to thispointr After deleting character-r: Welcome to thispointe After deleting character-i: Welcome to thsponter After deleting character-t: Welcome o hispoiner After deleting character-p: Welcome to thisointerKita dapat melihat bahwa karakter tertentu dihapus
Hapus semua karakter kecuali huruf menggunakan isalpha
Dalam hal ini, kita dapat menghapus semua karakter kecuali huruf dari sebuah string menggunakan isalpha(). Itu menerima karakter sebagai argumen dan mengembalikan True hanya jika karakter yang diberikan adalah alfabet. Kami akan memanggil metode filter() dengan fungsi ini sebagai parameter pertama dan string sebagai parameter kedua. Kemudian fungsi filter() akan mengulangi semua karakter dalam string dan untuk setiap karakter akan memanggil isalpha() untuk memeriksa apakah itu alfabet atau bukan. Jika tidak, maka akan menghapus karakter tersebut. Pada akhirnya mengembalikan urutan karakter yang hanya berisi huruf. Setelah itu, kita harus menerapkan join() untuk menggabungkan karakter
Contoh
Mari hapus semua karakter non-abjad dari string
input_str="Welcome56&%^ to this-(0)pointer" # Display the actual string print(input_str) # Remove all charcaters except alphabets using isalpha with filter() removed= filter(str.isalpha,input_str) finalStr="".join(removed) # Dispay the final string print (finalStr)Keluaran
Welcome56&%^ to this-(0)pointer WelcometothispointerKita dapat melihat bahwa karakter non-abjad dihapus dari string
Hapus semua karakter kecuali angka menggunakan desimal
Dalam hal ini, kita dapat menghapus semua karakter kecuali angka dari sebuah string menggunakan isdecimal(). Itu menerima karakter sebagai argumen dan mengembalikan True hanya jika karakter yang diberikan adalah angka. Kami akan memanggil metode filter() dengan fungsi ini sebagai parameter pertama dan string sebagai parameter kedua. Kemudian fungsi filter() akan mengulangi semua karakter dalam string dan untuk setiap karakter akan memanggil isdecimal() untuk memeriksa apakah itu angka atau bukan. Jika tidak, maka akan menghapus karakter tersebut. Pada akhirnya mengembalikan urutan karakter yang hanya berisi angka. Setelah itu, kita harus menerapkan join() untuk menggabungkan karakter
Contoh
Mari hapus semua karakter non-numerik dari string
input_str="Welcome56&%^ to this-(0)pointer" # Display the actual string print(input_str) # Remove all charcaters except numbers using isdecimal with filter() removed=filter(str.isdecimal,input_str) finalStr = "".join(removed) # Dispay the final string print (finalStr)Keluaran
Welcome56&%^ to this-(0)pointer 560Kita dapat melihat bahwa semua karakter non-numerik dihapus dari string
Hapus semua karakter kecuali huruf dan angka dari sebuah string
Dalam hal ini, kita dapat menghapus semua karakter kecuali huruf dan angka dari sebuah string menggunakan isalnum(). Itu menerima karakter sebagai argumen dan mengembalikan True hanya jika karakter yang diberikan adalah angka atau alfabet. Kami akan memanggil metode filter() dengan fungsi ini sebagai parameter pertama dan string sebagai parameter kedua. Kemudian fungsi filter() akan mengulangi semua karakter dalam string dan untuk setiap karakter akan memanggil isalnum() untuk memeriksa apakah itu angka atau alfabet. Jika tidak, maka akan menghapus karakter tersebut. Pada akhirnya mengembalikan urutan karakter yang hanya berisi angka dan huruf. Setelah itu, kita harus menerapkan join() untuk menggabungkan karakter
Contoh
Mari hapus semua karakter non-numerik dan non-abjad dari string
input_str="Welcome to thispointer" # Display the actual string print(input_str) listOfChars = ['c', 'W'] # Delete character 'c' and 'W' from input_str for ch in listOfChars: input_str = input_str.replace(ch, "") print(input_str) _0Keluaran
input_str="Welcome to thispointer" # Display the actual string print(input_str) listOfChars = ['c', 'W'] # Delete character 'c' and 'W' from input_str for ch in listOfChars: input_str = input_str.replace(ch, "") print(input_str) _1Kita dapat melihat bahwa hanya karakter numerik dan abjad yang dikembalikan dari string
Ringkasan
Pada artikel ini, kita belajar tentang berbagai cara untuk menghapus karakter tertentu dari sebuah string dengan Python. Selamat Coding