Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah saya boleh mengekstrak kandungan antara teg `` menggunakan PHP?

Bagaimanakah saya boleh mengekstrak kandungan antara teg `` menggunakan PHP?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-07 21:23:13612semak imbas

How can I extract content between `` tags using PHP?

Mengekstrak Kandungan Antara Teg HTML dengan PHP

Memang sukar untuk mengekstrak kandungan tertentu daripada rentetan menggunakan ungkapan biasa. Katakan anda perlu mendapatkan semula kandungan antara dan tag. Mari kita terokai cara untuk mencapai ini dalam PHP.

Memahami Corak Regex

Untuk mengekstrak kandungan antara teg, kami akan menggunakan corak regex berikut:

'#<\s*?code\b[^>]*>(.*?)</code\b[^>]*>#s'

Memecahkan Corak:

  • b: Memastikan kesilapan menaip seperti tidak ditangkap.</li> <li> <strong><sup><a href="https://www.php.cn/link/d58f36f7679f85784d8b010ff248f898" rel="nofollow" target="_blank">1</a></sup>*:</strong> Menangkap kandungan tag dengan atribut (mis., kelas).</li> <li> <strong>(.*?):</strong> Menangkap kandungan sebenar dalam teg sebagai tidak tamak padan.</li> <li> <strong>b:</strong> Sekali lagi, ini memastikan kesilapan menaip tidak ditangkap.</li> <li> <strong>s:</strong> Bendera 's' membolehkan corak menangkap kandungan dengan baris baharu.</li> </ul> <p><strong>Meletakkan Semuanya Bersama-sama:</strong></p> <pre class="brush:php;toolbar:false">$regex = '#&lt;\s*?code\b[^&gt;]*&gt;(.*?)&lt;/code\b[^&gt;]*&gt;#s'; $content = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. <code>Donec sed erat vel diam ultricies commodo. Nunc venenatis tellus eu quam suscipit quis fermentum dolor vehicula."; preg_match($regex, $content, $matches); $code = $matches[1];

    Memanipulasi dan Memasukkan Semula Kandungan Ekstrak

    Setelah anda mengekstrak kandungan, anda boleh melakukan operasi pada kedua-dua rentetan yang diekstrak dan induk . Untuk memasukkan semula kandungan yang diekstrak kembali ke dalam rentetan induk, anda boleh menggunakan teknik manipulasi rentetan seperti penggantian subrentetan.

    Sebagai contoh, mari gantikan kandungan dalam teg dengan "MODIFIED":

    $replacedContent = str_replace($matches[0], "MODIFIED", $content);

    Kesimpulan

    Dengan menggunakan ungkapan biasa yang disediakan, anda boleh mengekstrak kandungan dengan berkesan antara teg HTML tertentu dalam PHP. Teknik ini boleh terbukti berharga dalam pelbagai senario penghuraian rentetan.


    1. >

    Atas ialah kandungan terperinci Bagaimanakah saya boleh mengekstrak kandungan antara teg `` menggunakan PHP?. 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