Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Mengekstrak Nilai href daripada Tag Menggunakan Ungkapan Biasa?

Bagaimana untuk Mengekstrak Nilai href daripada Tag Menggunakan Ungkapan Biasa?

Linda Hamilton
Lepaskan: 2025-01-10 06:19:40
asal
702 orang telah melayarinya

How to Extract href Values from  Tags Using Regular Expressions?

Gunakan ungkapan biasa untuk mencari nilai 'href' pautan <a>

Mengekstrak pautan daripada HTML biasanya boleh dilakukan menggunakan corak mudah seperti "(?>.?)". Walau bagaimanapun, kaedah ini gagal apabila cuba mendapatkan atribut 'href' secara khusus.

Untuk menyelesaikan masalah ini, kita boleh menggunakan ungkapan biasa yang lebih tepat untuk mencari nilai 'href' dalam teg <a>. Berikut ialah corak yang sah:

<code><a\s+(?:[^>]*?\s+)?href=(["'])(.*?)</code>
Salin selepas log masuk

Ungkapan biasa ini berfungsi seperti ini:

  • Cari teg <a> permulaan.
  • Pilihan sepadan dengan mana-mana atribut atau ruang kosong sebelum atribut 'href'.
  • Tangkap petikan permulaan (tunggal atau berganda).
  • Memadankan mana-mana aksara antara petikan dan menangkapnya sebagai satu kumpulan (ini termasuk URL yang dipautkan).
  • Pastikan petikan penutup sepadan dengan petikan pembukaan.

Menggunakan regex ini, anda boleh mengekstrak nilai 'href' daripada pautan seperti ini:

<code><a ....="" href="//m.sbmmt.com/link/3d7a8f67f51564c349478f7d52abee3b"></a>
<a ....="" href="http:////m.sbmmt.com/link/3d7a8f67f51564c349478f7d52abee3b"></a>
<a ....="" href="https:////m.sbmmt.com/link/3d7a8f67f51564c349478f7d52abee3b"></a></code>
Salin selepas log masuk

Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa regex ini juga akan sepadan dengan pautan yang tidak mengandungi aksara "?" dan "=" yang diperlukan. Jika ini adalah masalah, penapisan tambahan mungkin diperlukan.

Atas ialah kandungan terperinci Bagaimana untuk Mengekstrak Nilai href daripada Tag Menggunakan 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