Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Mengendalikan Berbilang Garis Garis Terbalik dalam Ungkapan Biasa Python?

Bagaimana untuk Mengendalikan Berbilang Garis Garis Terbalik dalam Ungkapan Biasa Python?

Barbara Streisand
Barbara Streisandasal
2024-10-24 08:33:02217semak imbas

How to Handle Multiple Backslashes in Python Regular Expressions?

Memahami Garis Segaris Belakang dalam Ungkapan Biasa

Ekspresi biasa menggunakan garis sengkang terbalik () untuk tujuan khas, meningkatkan keupayaan padanan. Walau bagaimanapun, kekeliruan timbul apabila berbilang garis miring ke belakang muncul berturut-turut.

Menurut dokumentasi Python, garis miring terbalik bertindak sebagai watak melarikan diri, membolehkan anda memadankan aksara khas secara literal. Sebagai contoh, d mewakili sebarang digit perpuluhan.

Untuk mengelakkan aksara meta ini daripada ditafsirkan, dahului dengan garis serong ke belakang. Sebagai contoh, [ sepadan dengan literal [ dan sepadan dengan literal , kerana garis miring ke belakang membatalkan makna istimewanya.

Walau bagaimanapun, kod berikut secara tidak dijangka mengembalikan Tiada:

<code class="python">print(re.search('\d', '\d'))</code>

Isu ini berpunca daripada Python's tafsiran berganda bagi garis miring ke belakang. Mula-mula, ia menghuraikan dan menggantikan d dalam 'd' dengan digit perpuluhan (melalui urutan pelarian dnya). Oleh itu, 'd' kini mengandungi digit perpuluhan, bukan aksara 'd' yang kami ingin padankan.

Untuk membetulkan ini, hilangkan garis serong ke belakang dalam ungkapan biasa:

<code class="python">print(re.search('\\d', '\d'))</code>

Ini memastikan bahawa aksara 'd' dalam 'd' dipadankan secara literal, kerana '' mewakili garis miring ke belakang sebenar kerana melarikan diri dalam rentetan.

Ringkasnya, apabila menggunakan garis miring ke belakang dalam ungkapan biasa, ketahui bahawa Python mentafsir mereka pada pelbagai peringkat. Melarikan garis miring ke belakang dalam ungkapan biasa yang digunakan untuk memadankan aksara khas secara literal.

Atas ialah kandungan terperinci Bagaimana untuk Mengendalikan Berbilang Garis Garis Terbalik dalam Ungkapan Biasa Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn