Memadankan Aksara Baris Baharu dengan Ungkapan Biasa
Anda menghadapi cabaran semasa cuba memadankan rentetan antara
Untuk menangani isu ini, gunakan pengubah suai DOTALL (aka /s), yang membolehkan titik (.) sepadan dengan mana-mana aksara, termasuk baris baharu. Cuba ungkapan berikut:
'/<div>(.*)<\/div>/s'
Walau bagaimanapun, ambil perhatian bahawa padanan tamak mungkin tidak menghasilkan hasil yang diingini. Pertimbangkan untuk menggunakan padanan yang tidak tamak:
'/<div>(.*?)<\/div>/s'
Sebagai alternatif, anda boleh memadankan apa-apa sahaja kecuali '<', selagi tiada teg lain hadir:
'/<div>([^<]*)<\/div>/s'
Ingat, menggunakan aksara selain daripada '/' sebagai pembatas (cth., '#') boleh meningkatkan kebolehbacaan dengan menghapuskan keperluan untuk melepaskan '/' dalam teg. Berikut ialah contoh dengan '#':
'#<div>([^<]*)<\/div>'
Walaupun pilihan ini, adalah penting untuk mengetahui batasan regex apabila berurusan dengan HTML yang kompleks. Div bersarang, ruang kosong tambahan dan kerumitan lain boleh menyebabkan penghuraian regex tidak boleh dipercayai. Untuk penghuraian yang lebih tepat, pertimbangkan untuk menggunakan penghurai HTML.
Atas ialah kandungan terperinci Bagaimanakah Saya Memadankan Aksara Baris Baharu dalam Tag HTML Menggunakan Ungkapan Biasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!