Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Ungkapan Biasa PHP: Bagaimana untuk memadankan semua senarai dalam HTML

Ungkapan Biasa PHP: Bagaimana untuk memadankan semua senarai dalam HTML

王林
王林asal
2023-06-22 21:21:471539semak imbas

Dalam pembangunan web, adalah perkara biasa untuk memaparkan kandungan dalam senarai. Apabila memproses dan menghuraikan fail HTML, ungkapan biasa boleh digunakan untuk memadankan kandungan yang sepadan dengan lebih mudah. Artikel ini akan memperkenalkan cara memadankan semua senarai dalam HTML menggunakan ungkapan biasa PHP.

  1. Pemerolehan teks halaman web
    Sebelum memproses senarai HTML, anda perlu mendapatkan kandungan teks fail HTML terlebih dahulu. Anda boleh menggunakan fungsi file_get_contents PHP untuk mendapatkan keseluruhan kandungan teks fail HTML Kodnya adalah seperti berikut:
$html = file_get_contents('example.html');
  1. Padankan senarai tidak tersusun
    Yang pertama ialah senarai tidak tertib. Senarai tidak tersusun dilaksanakan melalui tag ul dan tag li. Tag ul digunakan untuk mewakili keseluruhan senarai, dan tag li mewakili setiap item dalam senarai. Kita boleh menggunakan ungkapan biasa ff6d136ddc5fdfeffaf53ff6ee95f185(.*?)929d1f5ca49e04fdcb27f9465b944689 untuk memadankan semua senarai tidak tersusun. Antaranya, ? bermaksud bahawa padanan ini tidak tamak, dan kandungan yang dipadankan akan dipilih sekecil mungkin, supaya berbilang senarai tidak akan disambungkan bersama untuk padanan kelompok. Kod lengkap adalah seperti berikut:
preg_match_all('/<ul>(.*?)</ul>/s', $html, $matches);

foreach ($matches[0] as $key => $value) {
    echo $key . ': ' . $value . '<br>';
}

Dalam kod di atas, fungsi preg_match_all boleh melakukan berbilang padanan dan menyimpan hasil padanan ke $match. Dan /s bermaksud . Akhir sekali, gunakan foreach untuk melintasi dan mengeluarkan hasil yang sepadan.

  1. Senarai tertib padan
    Senarai tertib dilaksanakan melalui tag ol dan li. Tag ol digunakan untuk mewakili senarai tertib, manakala li mewakili setiap item di dalamnya. Ungkapan biasa pada asasnya adalah sama dengan kaedah pemadanan senarai tidak tertib di atas Ungkapan biasa untuk memadankan senarai tersusun ialah:
preg_match_all('/<ol>(.*?)</ol>/s', $html, $matches);

foreach ($matches[0] as $key => $value) {
    echo $key . ': ' . $value . '<br>';
}

Begitu juga, anda boleh menggunakan fungsi preg_match_all untuk memadankan, dan menggunakan foreach untuk mengeluarkan output. keputusan .

  1. Padankan senarai tersuai
    Senarai tersuai dilaksanakan melalui teg dl, dt dan dd. Teg dl digunakan untuk mewakili senarai definisi, teg dt digunakan untuk mewakili nama item tersuai dan teg dd digunakan untuk mewakili perihalan item tersuai. Ungkapan biasa adalah seperti berikut:
preg_match_all('/<dl>(.*?)</dl>/s', $html, $matches);

foreach ($matches[0] as $key => $value) {
    echo $key . ': ' . $value . '<br>';
}

Begitu juga, gunakan fungsi preg_match_all untuk dipadankan dan gunakan foreach untuk mengeluarkan hasilnya.

  1. Padankan semua senarai
    Walaupun kaedah pemadanan bagi tiga senarai di atas adalah berbeza, ungkapan biasa adalah sangat serupa. Jika anda perlu memadankan semua senarai dalam HTML, anda boleh menggunakan ungkapan biasa yang mudah.

Ungkapan biasa yang sepadan dengan semua senarai ialah: /04585a9939123efd3b029e4061973694(.*?)2f93380ee9d9196dac17b821a744d509/s.

Antaranya, [ou] mewakili set aksara, yang bermaksud padanan o atau u. Gunakan fungsi preg_match_all untuk pemadanan, kodnya adalah seperti berikut:

preg_match_all('/<[ou]l>(.*?)</[ou]l>/s', $html, $matches);

foreach ($matches[0] as $key => $value) {
    echo $key . ': ' . $value . '<br>';
}

Kod di atas akan sepadan dengan semua senarai dalam HTML dan mengeluarkan hasil yang sepadan.

Ringkasan
Apabila memproses fail HTML, menggunakan ungkapan biasa boleh memadankan kandungan yang sepadan dengan lebih mudah dan cepat. Apabila memadankan senarai HTML, anda boleh memadankan berdasarkan teg pelbagai jenis senarai. Pada masa yang sama, anda juga boleh menggabungkan kaedah padanan bagi tiga jenis senarai dan menggunakan satu ungkapan biasa untuk memadankan semua senarai, yang lebih mudah.

Atas ialah kandungan terperinci Ungkapan Biasa PHP: Bagaimana untuk memadankan semua senarai dalam HTML. 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