Bagaimana Anda menghapus semua tanda baca dari sebuah string di python regex?

Pada artikel ini, kita akan membahas berbagai cara untuk menghapus semua karakter tanda baca dari sebuah string dengan Python

Daftar isi

Paket string dalam python menyediakan tanda baca variabel dan berisi semua karakter tanda baca i. e

r"""!"#$%&'()*+,-./:;<=>[email protected][\]^_`{|}~"""

Kami akan menggunakan ini

Hapus tanda baca 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)
_

Itu mencari kecocokan dari pola regex yang diberikan di sengatan original_str dan mengganti semua kemunculan kecocokan dengan string replacement_str

Kita bisa menggunakan regex. sub() fungsi, untuk menghapus semua tanda baca dari sebuah string. Untuk itu kita perlu melewati pola regex yang cocok dengan semua tanda baca dalam sebuah string. Kemudian ganti substring yang cocok dengan string kosong

Sebagai contoh,

import re
import string

strValue = "This,!! is,.  !! a ;; sample,.., ! string !!"

pattern = "[" + re.escape(string.punctuation) + "]"

strValue = re.sub(pattern, '', strValue )

print(strValue)

Keluaran

This is   a  sample  string

Itu menghapus semua karakter tanda baca dari string dengan Python

Hapus tanda baca dari String menggunakan replace()

Dalam Python, kelas string menyediakan fungsi anggota untuk mengganti semua kemunculan substring dalam string i. e

str.replace(to_be_replaced, replacement, count )
_

Ini menerima dua argumen i. e

  • to_be_replaced. Tali yang akan diganti
  • penggantian. Tali pengganti
  • menghitung. Berapa kali sub-string akan diganti dengan string pengganti

Ini mengembalikan salinan objek string pemanggil tetapi dengan konten yang diubah i. e. setelah mengganti semua kemunculan sub-string dalam string itu. String asli tetap tidak berubah

Paket string dalam python menyediakan tanda baca variabel dan berisi semua karakter tanda baca i. e

r"""!"#$%&'()*+,-./:;<=>[email protected][\]^_`{|}~"""

Ulangi semua karakter dalam string. tanda baca dan ganti semua kemunculan setiap tanda baca dengan string kosong

Sebagai contoh,

import string

strValue = "This,!! is,.  !! a ;; sample,.., ! string !!"

for ch in string.punctuation:
    strValue = strValue.replace(ch, '')

print(strValue)
_

Keluaran

This is   a  sample  string

Itu menghapus semua karakter tanda baca dari string dengan Python

Hapus tanda baca dari String menggunakan terjemahan ()

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 menggunakan fungsi maketrans() untuk membuat pemetaan ini dalam bentuk tabel terjemahan. Jika kita hanya ingin menghapus beberapa karakter daripada menggantinya, maka kita dapat memberikan karakter tersebut sebagai argumen ketiga

hapus semua karakter tanda baca dari string, buat tabel terjemahan tempat semua tanda baca dipetakan dengan string kosong. Kemudian berikan tabel terjemahan itu ke fungsi translate()

Sebagai contoh,

import string

strValue = "This,!! is,.  !! a ;; sample,.., ! string !!"

# Map characters to be deleted with an empty string
translation_table = str.maketrans('', '', string.punctuation)

# Remove specific characters from the string based
# on translation table / mapping table
strValue = strValue.translate(translation_table)

print(strValue)
_

Keluaran

This is   a  sample  string

Itu menghapus semua karakter tanda baca dari string dengan Python

Hapus tanda baca dari String menggunakan filter() dan join()

Di Python, Anda bisa menggunakan fungsi filter() untuk memfilter semua kemunculan karakter tertentu dari sebuah string. Langkah-langkahnya adalah sebagai berikut,

  • Buat fungsi lambda yang menerima karakter sebagai argumen dan periksa apakah karakter itu adalah tanda baca atau bukan. Lewati fungsi lambda itu ke fungsi filter() bersama dengan string. Ini akan menyaring semua tanda baca dari string. Kemudian gabungkan kembali karakter yang tersisa

    Ekspresi generator digunakan untuk melakukan beberapa operasi untuk setiap elemen atau memilih subset elemen yang memenuhi syarat

    Pada setiap iterasi, kami menggunakan metode str.isalnum() untuk memeriksa apakah karakter saat ini adalah alfanumerik

    Metode mengembalikan True jika semua karakter dalam string adalah alfanumerik dan string berisi setidaknya satu karakter, jika tidak, metode mengembalikan False

    Langkah terakhir adalah menggunakan metode str.join() untuk menggabungkan karakter yang tersisa menjadi sebuah string

    Metode mengambil iterable sebagai argumen dan mengembalikan string yang merupakan gabungan dari string di iterable

    String metode yang dipanggil digunakan sebagai pemisah antar elemen

    Jika Anda ingin menghapus semua tanda baca dan karakter khusus yang menyimpan spasi, gunakan operator boolean or

    Pada setiap iterasi, kami memeriksa apakah karakter saat ini adalah alfanumerik atau string spasi

    Metode mengembalikan True jika hanya ada karakter spasi putih dalam string dan setidaknya ada satu karakter, jika tidak False dikembalikan

    Sebagai alternatif, Anda dapat menggunakan metode re.sub()

    Hapus tanda baca dan karakter khusus dari String menggunakan re. sub()

    Gunakan metode re.sub()_ untuk menghapus semua tanda baca dan karakter khusus dari sebuah string, e. g. str.join()1. Metode re.sub()_ akan menghapus semua tanda baca dan karakter khusus dengan menggantinya dengan string kosong

    Metode mengembalikan string baru yang diperoleh dengan mengganti kemunculan pola dengan penggantian yang disediakan

    Argumen pertama yang kami sampaikan ke metode re.sub() adalah ekspresi reguler

    Tanda kurung siku str.join()_4 digunakan untuk menunjukkan sekumpulan karakter

    Karakter str.join()5 dan str.join()6 mewakili rentang huruf kecil dan huruf besar

    str.join()_7 karakter cocok dengan angka dalam rentang

    Karakter str.join()_8 cocok dengan karakter spasi kosong Unicode seperti str.join()9

    Tanda sisipan str.isalnum()_0 di awal himpunan berarti "TIDAK". Dengan kata lain, cocokkan semua non-huruf, non-digit dan non-spasi dan ganti dengan string kosong (hapus)

    Anda dapat menambahkan lebih banyak karakter di antara tanda kurung siku jika ingin mempertahankannya

    Jika Anda memerlukan bantuan untuk membaca atau menulis ekspresi reguler, lihat subjudul di dokumen resmi

    Halaman ini berisi daftar semua karakter khusus dengan banyak contoh berguna

    Pendekatan mana yang Anda pilih adalah masalah preferensi pribadi. Saya akan menggunakan ekspresi generator dengan metode str.isalnum() untuk tujuan keterbacaan

    Bagaimana Anda menghapus semua tanda baca dan spasi dari sebuah string dengan Python?

    Ilmu Data Praktis menggunakan Python . Kami akan memeriksa apakah setiap karakter adalah alfabet atau angka menggunakan isalnum (), jika tidak maka akan dihapus atau kita akan melanjutkan ke karakter berikutnya. using isalnum() method on each character of the string by iterating it using for loop. We will check if each character is either alphabet or number using isalnum(), if they are not then they will be removed else we will go on to next character.

    Bagaimana cara menghapus semua tanda baca dan karakter khusus di Python?

    Salah satu metode termudah dan tercepat untuk menghapus tanda baca dan karakter khusus dari sebuah string adalah dengan menggunakan metode terjemahan (). The built-in translate () function is available in the string library of Python.

    Bagaimana cara menghapus semua tanda baca dari kolom dengan Python?

    Cara Menghapus Tanda Baca Dari Panda .
    str. mengganti()
    regex. sub()
    dan str. menerjemahkan()

    Bagaimana Anda mengganti semua tanda baca dengan spasi di Python?

    sub() function dapat digunakan untuk mengganti substring tertentu yang cocok dengan beberapa pola regex. Kita bisa menggunakannya untuk mengganti koma dengan spasi di daftar dengan Python.