Rumah > Artikel > pembangunan bahagian belakang > Bagaimanakah saya boleh memisahkan rentetan dengan ruang sambil mengekalkan subrentetan yang dipetik dalam Python?
Memisahkan Rentetan dengan Ruang Semasa Memelihara Subrentetan Dipetik dalam Python
Apabila bekerja dengan rentetan yang mengandungi kedua-dua ruang dan petikan, ia boleh mencabar untuk memisahkan mereka tanpa kehilangan integriti subrentetan yang dipetik. Dalam Python, anda mungkin pada mulanya mempertimbangkan untuk menggunakan kaedah string.split() standard, tetapi ia akan memisahkan rentetan pada setiap ruang, tanpa mengira petikan.
Untuk menangani isu ini, Python menyediakan penyelesaian yang mudah melalui shlexnya modul, khususnya, fungsi split(). Fungsi split() membolehkan anda membahagi rentetan berdasarkan ruang sambil mengabaikan rentetan dalam segmen yang dipetik.
Pertimbangkan rentetan contoh: "ini ialah "ujian"." Untuk memisahkannya menggunakan shlex.split(), cuma panggilnya dengan rentetan sebagai hujah:
<code class="python">import shlex shlex.split('this is "a test"')</code>
Hasilnya ialah senarai tiga elemen: ['this', 'is', 'a ujian']. Subrentetan yang dipetik dikekalkan sebagai satu elemen.
Anda boleh memperibadikan lagi gelagat shlex.split() dengan menghantar argumen kata kunci posix=False. Ini akan menghalangnya daripada mengalih keluar tanda petikan di sekeliling subrentetan:
<code class="python">shlex.split('this is "a test"', posix=False)</code>
Dalam kes ini, hasilnya ialah: ['this', 'is', '"a test"'].
Atas ialah kandungan terperinci Bagaimanakah saya boleh memisahkan rentetan dengan ruang sambil mengekalkan subrentetan yang dipetik dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!