Bagaimana untuk Membuat Titik (.) Memadankan Garis Baharu dalam Ungkapan Biasa?

Mary-Kate Olsen
Lepaskan: 2024-10-31 13:10:02
asal
484 orang telah melayarinya

How to Make the Dot (.) Match Newlines in Regular Expressions?

Menggunakan Ungkapan Biasa untuk Menjadikan Titik Padanan Aksara Baris Baharu

Dalam ungkapan biasa, titik (.) boleh memadankan mana-mana aksara kecuali baris baharu. Walau bagaimanapun, kadangkala anda mungkin mahu memadankan baris baharu juga.

Untuk mencapai ini, anda boleh menggunakan pengubah suai DOTALL (/s). Ia menjadikan titik itu sepadan dengan semua aksara, termasuk baris baharu.

Sebagai contoh, ungkapan biasa berikut tidak akan sepadan dengan baris baharu:

/<div>(.*)</div>/
Salin selepas log masuk

Untuk menjadikannya sepadan dengan baris baharu, tambahkan pengubah suai DOTALL:

/<div>(.*)</div>/s
Salin selepas log masuk

Walau bagaimanapun, ini mungkin tidak sesuai jika anda mahukan perlawanan yang tidak tamak. Sebaliknya, anda boleh menggunakan padanan yang tidak tamak:

/<div>(.*?)</div>/s
Salin selepas log masuk

Sebagai alternatif, jika tiada teg lain, anda boleh memadankan semua kecuali '<' aksara:

/<div>([^<]*)</div>/
Salin selepas log masuk

Perlu juga ambil perhatian bahawa anda tidak semestinya perlu menggunakan '/' sebagai pembatas untuk ungkapan biasa. Menggunakan aksara yang berbeza membolehkan anda mengelak daripada melepaskan garis miring dalam

, meningkatkan kebolehbacaan. Sebagai contoh, berikut ialah cara ungkapan biasa sebelumnya akan kelihatan menggunakan '#' sebagai pembatas:

#<div>([^<]*)</div>#
Salin selepas log masuk

Walau bagaimanapun, adalah penting untuk mengetahui bahawa penyelesaian ini mungkin gagal dengan kehadiran div bersarang, ruang kosong tambahan, Komen HTML dan kerumitan lain. HTML agak rumit, jadi selalunya lebih sesuai untuk menggunakan penghurai HTML untuk tugasan sedemikian.

Atas ialah kandungan terperinci Bagaimana untuk Membuat Titik (.) Memadankan Garis Baharu dalam Ungkapan Biasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan