Memisahkan Rentetan dengan Ruang Semasa Memelihara Subrentetan Dipetik dalam Python
Apabila memproses rentetan yang mengandungi kedua-dua ruang dan subrentetan petikan, ia boleh mencabar untuk belah rentetan dengan tepat sambil mengekalkan integriti bahagian yang dipetik. Dalam Python, modul shlex menyediakan penyelesaian untuk senario khusus ini.
Menggunakan shlex.split() untuk Mengekalkan Petikan
Fungsi shlex.split() membolehkan anda untuk membelah rentetan dengan ruang sambil merawat subrentetan yang disebut sebagai satu unit. Ini bermakna ruang dalam subrentetan yang dipetik akan diabaikan dan teks yang dipetik akan disimpan sebagai satu elemen dalam senarai yang terhasil.
Contoh Penggunaan:
Pertimbangkan rentetan berikut:
this is "a test"
Untuk memisahkan rentetan ini menggunakan shlex.split(), hanya import modul dan gunakan kod berikut:
import shlex
result = shlex.split('this is "a test"')
Pembolehubah hasil akan mengandungi senarai berikut :
['this', 'is', 'a test']
Ruang dalam subrentetan yang dipetik ("ujian") telah diabaikan dan teks yang dipetik telah dipelihara sebagai satu elemen.
Memelihara Tanda Petikan
Jika anda juga ingin mengekalkan tanda petikan itu sendiri dalam senarai terhasil anda, anda boleh menghantar argumen kata kunci posix=False kepada shlex.split().
Untuk contoh:
result = shlex.split('this is "a test"', posix=False)
Ini akan menghasilkan senarai berikut:
['this', 'is', '"a test"']
Tanda petikan kini telah dikekalkan sebagai sebahagian daripada output.
Dalam kesimpulannya, fungsi shlex.split() dalam Python menawarkan cara yang mudah dan cekap untuk memisahkan rentetan mengikut ruang sambil mengekalkan integriti subrentetan yang dipetik. Dengan menggunakan argumen posix=False keyword, anda juga boleh mengekalkan tanda petikan dalam senarai terhasil anda.
Atas ialah kandungan terperinci Bagaimana untuk Memisahkan Rentetan dengan Ruang Semasa Memelihara Subrentetan Dipetik dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!