Python

Penggantian Python String menggunakan Corak

Penggantian Python String menggunakan Corak
Segala data rentetan dapat diganti dengan rentetan lain di Python dengan menggunakan ganti () kaedah. Tetapi jika anda ingin mengganti bahagian rentetan dengan mencocokkan corak tertentu maka anda harus menggunakan ungkapan biasa. Ini digunakan untuk mencari corak tertentu dalam nilai rentetan tertentu dan tali akan diganti dengan rentetan lain jika ada padanan yang dijumpai. Python menggunakan 'semula' modul untuk menggunakan corak ungkapan biasa dalam skrip untuk mencari atau mencocokkan atau mengganti. Menggunakan corak ekspresi biasa untuk penggantian tali sedikit lebih perlahan daripada kaedah ganti () biasa tetapi banyak carian dan penggantian yang rumit dapat dilakukan dengan mudah dengan menggunakan pola. Anda boleh mengganti rentetan dengan pelbagai cara menggunakan corak di Python. Beberapa kegunaan corak biasa untuk menggantikan tali ditunjukkan dalam tutorial ini. Perisik3 editor digunakan di sini untuk menulis dan menjalankan skrip.

Senarai Metacharacters:

Sebelum menggunakan corak untuk menggantikan rentetan, anda harus mengetahui cara menulis corak ungkapan biasa. Anda boleh menggunakan sebarang nilai rentetan sebagai corak untuk pencocokan tepat. Tetapi untuk carian tertentu, anda harus menulis corak ungkapan biasa dengan menggunakan metacharacter. Senarai metakarakter yang paling banyak digunakan untuk corak penulisan diberikan di bawah dengan makna.

    Perwatakan  Penerangan
    .  Ia digunakan untuk mencocokkan mana-mana watak kecuali garis baru.
    ^  Ini digunakan untuk mencocokkan watak atau rentetan pada awal huruf

tali.

    $  Ini digunakan untuk mencocokkan sebarang watak atau rentetan pada akhir rentetan.
    +  Ia digunakan untuk mencocokkan satu atau lebih kejadian corak.
    ?  Ia digunakan untuk memadankan sifar atau satu kejadian corak.
   ()  Ia digunakan untuk corak pengelompokan.
   Ia digunakan untuk mencocokkan berdasarkan bawah atau atas atau kedua-dua bawah dan atas

had.

   []  Ini digunakan untuk mencocokkan watak berdasarkan julat yang diberikan.
   |  Ia digunakan untuk memadankan corak berdasarkan logik ATAU.
   \  Ia digunakan untuk menentukan watak tertentu atau bukan watak atau digit atau

bukan digit.

Kaedah Ganti:

sub () kaedah 'semula' modul digunakan dalam Python untuk penggantian tali.

Sintaks:

sub (corak, ganti, rentetan, hitung = 0, bendera = 0)

Di sini corak, ganti dan tali adalah hujah wajib. Sekiranya corak dipadankan dengan mana-mana bahagian tali maka ia akan menggantikan bahagian tersebut dengan nilai menggantikan hujah. Dua hujah yang lain adalah pilihan. Beberapa penggunaan metakarakter yang disebutkan di atas dengan kaedah sub () ditunjukkan dalam contoh penggantian rentetan berikut.

Contoh-1: Ganti rentetan dengan padanan tepat

Sekiranya anda mengetahui nilai rentetan tepat yang ingin anda cari di rentetan utama, maka anda boleh menggunakan nilai rentetan pencarian sebagai corak di sub () kaedah. Buat fail python dengan skrip berikut. Di sini, nilai rentetan carian adalah 'hujan' dan nilai rentetan pengganti adalah 'cerah'.

#!/ usr / bin / env python3
# Import modul regex
import semula
# Tentukan rentetan
orgStr = "Ia adalah hari hujan"
# Ganti rentetan
repStr = re.sub ("hujan", "cerah", orgStr)
# Cetak rentetan asal
cetak ("Teks Asal:", orgStr)
# Cetak tali yang diganti
cetak ("Teks Diganti:", repStr)

Pengeluaran:

Keluaran ditunjukkan di sebelah kanan gambar.

Contoh-2: Cari dan Ganti rentetan pada awalnya

Buat fail python dengan skrip berikut untuk mengetahui penggunaannya '^' dalam corak ungkapan biasa. Di sini, '^ [A-Za-z] + ' digunakan sebagai corak pencarian. Ia akan mencari semua watak abjad dari A ke Z dan a ke z pada awal teks dan ganti dengan nilai kosong. Rentetan yang diganti akan dicetak dengan huruf besar untuk atas () kaedah.

#!/ usr / bin / env python3
# Import modul regex
import semula
# Ambil input rentetan
originalText = input ("Masukkan teks \ n")
# Ganti String berdasarkan corak
digantiTeks = re.sub ('^ [A-Za-z] +', ", teks asal).atas ()
# Cetak tali yang diganti
cetak ("Teks Diganti:", digantiTeks)

Pengeluaran:

Keluaran ditunjukkan di sebelah kanan gambar. Di sini, 'Halo, selamat datang ke linuxhint' diambil sebagai input dan 'Helo' perkataan digantikan dengan " untuk corak.

Contoh-3: Cari dan Ganti rentetan di hujungnya

Buat fail python dengan skrip berikut untuk mengetahui penggunaan '$ ' simbol dalam corak ungkapan biasa. Di sini, '[a-z0-9] + $'digunakan sebagai corak dalam skrip. Ia akan mencari semua huruf kecil dan digit di akhir teks dan jika dikembalikan benar maka bahagian yang sesuai akan diganti dengan rentetan, 'com.bd'.

#!/ usr / bin / env python3
# Import modul regex
import semula
# Ambil input rentetan
originalText = input ("Masukkan alamat url \ n")
# Ganti String berdasarkan corak
digantiTeks = re.sub ('[a-z0-9] + $', 'com.bd ', teks asal)
# Cetak tali yang diganti
cetak ("Teks Diganti:", digantiTeks)

Pengeluaran:

Keluaran ditunjukkan di sebelah kanan gambar. Di sini, 'https: // www.google.com 'diambil sebagai teks input dan setelah diganti,' https: // www.google.com.bd 'dicetak sebagai output.

Contoh-4: Cari dan Ganti bahagian tertentu rentetan

Buat fail python dengan skrip berikut untuk mencari dan mengganti bahagian teks di tempat yang sesuai dengan corak. Di sini, senarai alamat e-mel diberikan sebagai teks ke dalam pemboleh ubah yang dinamakan e-mel. '@ [a-z]' digunakan corak untuk mencari. Ia akan mencari sub-string yang dimulakan dengan huruf kecil diikuti dengan '@simbol. Sekiranya ada sub-string yang sesuai maka ia akan menggantikan sub-string itu dengan '@linuxhint'.

#!/ usr / bin / env python3
# Import modul regex
import semula
# Tentukan rentetan
e-mel = '\ n [dilindungi e-mel] \ n [dilindungi e-mel] \ n [dilindungi e-mel]'
# Ganti bahagian tertentu tali berdasarkan corak
digantiTeks = re.sub ('@ [a-z] *', '@linuxhint', e-mel)
# Cetak rentetan asal
cetak ("Teks Asal:", e-mel)
# Cetak tali yang diganti
cetak ("\ nTeks Diganti:", digantiTeks)

Pengeluaran:

Keluaran ditunjukkan di sebelah kanan gambar. Di sini, setiap bahagian domain dari alamat e-mel yang diberikan dalam teks diganti dengan 'linuxhint'.

Kesimpulan:

Beberapa penggunaan corak ungkapan biasa yang sangat biasa ditunjukkan dalam tutorial ini untuk penggantian tali. Terdapat banyak pilihan lain di python untuk menulis pelbagai jenis corak sederhana dan rumit untuk mencari dan menggantikan rentetan teks.

Tonton Video Pengarang: di sini

Tutorial OpenTTD
OpenTTD adalah salah satu permainan simulasi perniagaan yang paling popular di luar sana. Dalam permainan ini, anda perlu membuat perniagaan pengangku...
SuperTuxKart untuk Linux
SuperTuxKart adalah tajuk hebat yang direka untuk membawa anda pengalaman Mario Kart secara percuma pada sistem Linux anda. Ia cukup mencabar dan meny...
Tutorial Battle for Wesnoth
The Battle for Wesnoth adalah salah satu permainan strategi sumber terbuka paling popular yang boleh anda mainkan pada masa ini. Bukan hanya permainan...