Bagaimana untuk membuang tag HTML dalam PHP menggunakan ungkapan biasa

WBOY
Lepaskan: 2023-06-22 17:08:01
asal
924 orang telah melayarinya

HTML ialah elemen penting dalam pembangunan web. Tetapi kadangkala kita perlu mengekstrak teks biasa daripada HTML tanpa tag HTML. Pada masa ini, ungkapan biasa adalah alat yang sangat mudah.

Dalam PHP, anda boleh menggunakan fungsi preg_replace() untuk mengalih keluar tag HTML. Penggunaan fungsi ini adalah seperti berikut:

preg_replace($pattern, $replacement, $subject);
Salin selepas log masuk

di mana $pattern ialah corak ungkapan biasa, $replacement ialah rentetan gantian dan $subject ialah rentetan yang akan diproses. Ambil perhatian bahawa kedua-dua $pattern dan $replacement boleh menjadi tatasusunan, seperti yang dibincangkan di bawah.

Seterusnya, kita akan membincangkan beberapa ungkapan biasa biasa untuk mengalih keluar teg HTML.

  1. Alih keluar teg HTML
$pattern = '/<[^>]*>/';
$replacement = '';
$text = preg_replace($pattern, $replacement, $html);
Salin selepas log masuk

Dalam ungkapan biasa ini, < mewakili kurungan sudut kiri dan 1 mewakili Padan dengan mana-mana aksara kecuali kurungan sudut kanan, * bermaksud padan 0 atau lebih kali. Oleh itu, ungkapan ini akan sepadan dengan mana-mana teg HTML dan menggantikannya dengan aksara nol.

  1. Alih keluar tag skrip
$pattern = '/<script[^>]*>(.*?)</script>/is';
$replacement = '';
$text = preg_replace($pattern, $replacement, $html);
Salin selepas log masuk

Ungkapan biasa ini akan memadankan mana-mana teks dengan teg Token (?s) bermaksud . Ungkapan ini juga tidak tamak kerana ia menggunakan *?, yang akan memadankan sesedikit aksara yang mungkin.

  1. Alih keluar teg gaya
$pattern = '/<style[^>]*>(.*?)</style>/is';
$replacement = '';
$text = preg_replace($pattern, $replacement, $html);
Salin selepas log masuk

Ungkapan biasa ini akan memadankan mana-mana teks dengan teg (?s) penanda dan *? digunakan dengan cara yang serupa dengan contoh sebelumnya.

  1. Alih keluar teg kosong
$pattern = '/<([a-z]+)(?:s+[^>]+)?>(s*)</>/i';
$replacement = '';
$text = preg_replace($pattern, $replacement, $html);
Salin selepas log masuk

Reexs ini akan memadankan mana-mana teg kosong dan mengalih keluarnya. (s*) akan sepadan dengan mana-mana aksara ruang putih. ?: mewakili kumpulan yang tidak menangkap, bermakna ia akan dipadankan tetapi tidak diganti.

  1. Alih keluar aksara ruang kosong yang tidak diperlukan
$pattern = '/>s+</';
$replacement = '><';
$text = preg_replace($pattern, $replacement, $html);
Salin selepas log masuk

Reeks ringkas ini akan memadankan mana-mana aksara ruang kosong antara dua teg dan menggantikannya dengan satu ruang .

Ringkasnya, ungkapan biasa ini sering digunakan semasa mengalih keluar teg HTML. Sudah tentu, terdapat banyak cara untuk mengalih keluar tag HTML. Pilihan terakhir bergantung pada keperluan khusus anda dan cara kod anda dilaksanakan.


  1. >

Atas ialah kandungan terperinci Bagaimana untuk membuang tag HTML dalam PHP menggunakan ungkapan biasa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!