Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Ungkapan Biasa PHP: Cara mengekstrak subrentetan dengan permulaan dan akhir tertentu daripada rentetan

Ungkapan Biasa PHP: Cara mengekstrak subrentetan dengan permulaan dan akhir tertentu daripada rentetan

WBOY
WBOYasal
2023-06-22 09:10:301669semak imbas

PHP ialah bahasa pengaturcaraan yang popular dengan keupayaan ekspresi biasa yang berkuasa. Ungkapan biasa ialah alat pemprosesan rentetan yang berkuasa yang memudahkan untuk mengekstrak perkara yang anda inginkan daripada rentetan.

Artikel ini akan memperkenalkan penggunaan ungkapan biasa PHP, terutamanya cara mengekstrak subrentetan dengan permulaan dan akhir tertentu daripada rentetan. Jika anda ingin belajar cara mengekstrak subrentetan menggunakan ungkapan biasa PHP, maka artikel ini akan membantu anda.

Pertama, mari kita semak asas ungkapan biasa. Ungkapan biasa ialah peraturan sintaks yang mentakrifkan corak rentetan. Ia boleh digunakan untuk mencari, menggantikan dan mengesahkan teks.

Dalam PHP, kami menggunakan fungsi preg_match() untuk mencari rentetan bagi subrentetan yang sepadan dengan ungkapan biasa. Fungsi ini mengambil tiga parameter: ungkapan biasa, rentetan yang akan dicari dan tatasusunan hasil. Jika fungsi berjaya mencari subrentetan yang sepadan, ia menyimpan hasil dalam tatasusunan hasil dan mengembalikan benar. Jika tidak, pulangan palsu.

Seterusnya, mari kita lihat cara menggunakan ungkapan biasa untuk mengekstrak subrentetan dengan permulaan dan akhir tertentu daripada rentetan. Pertimbangkan contoh berikut:

$string = "The quick brown fox jumps over the lazy dog.";

Sekarang, kami ingin mengekstrak daripada rentetan ini subrentetan yang bermula dengan huruf "q" dan berakhir dengan huruf "g". Kita boleh menggunakan ungkapan biasa berikut untuk mencapai ini:

$regex = '/q.*g/';

Ungkapan biasa ini bermakna ia bermula dengan huruf "q", diikuti dengan mana-mana aksara (diwakili oleh .), sehingga ia bermula dengan huruf "g "sehingga akhir. Sekarang, kita boleh menggunakan fungsi preg_match() untuk mencari rentetan ini:

if (preg_match($regex, $string, $matches)) {
    echo $matches[0];
}

Fungsi kod ini adalah untuk mencari $string untuk kandungan yang sepadan dengan ungkapan biasa $regex dan menyimpan hasilnya dalam $ padanan tatasusunan. Dan output $matches[0]. Hasil larian ialah:

quick brown fox jumps over the lazy dog

Kami berjaya mengekstrak subrentetan bermula dengan huruf "q" dan berakhir dengan huruf "g" daripada rentetan!

Mari kita lihat contoh yang lebih kompleks. Kami kini mempunyai kod sumber halaman HTML:

$html = '<div class="content">
            <h1>Welcome to my website</h1>
            <p>I hope you enjoy your stay!</p>
        </div>';

Kami ingin mengekstrak kandungan dalam teg 4a249f0d628e2318394fd9b75b4636b1 Menggunakan ungkapan biasa, kami boleh menyelesaikan tugas ini dengan mudah:

$regex = '/<h1>(.*?)</h1>/';

Apa yang dimaksudkan dengan ungkapan biasa ini ialah mencari kandungan yang bermula dengan 4a249f0d628e2318394fd9b75b4636b1 dan berakhir dengan 473f0a7621bec819994bb5020d29372a, dalam kurungan *? aksara (gunakan ? untuk mewakili mod tidak tamak), dan kurungan menunjukkan bahawa kandungan yang dipadankan disimpan dalam elemen pertama dalam tatasusunan $matches. Seterusnya, kita boleh menggunakan fungsi preg_match() untuk mencari kod sumber HTML ini:

if (preg_match($regex, $html, $matches)) {
    echo $matches[1];
}

Fungsi kod ini adalah untuk mencari $html untuk kandungan yang sepadan dengan ungkapan biasa $regex dan menyimpan hasilnya dalam $matches array , dan keluarkan kandungan dalam kurungan pertama dalam kandungan yang dipadankan. Hasil yang dijalankan ialah:

Welcome to my website

Kami berjaya mengekstrak kandungan dalam teg 4a249f0d628e2318394fd9b75b4636b1

Dalam artikel ini, kami membincangkan asas ungkapan biasa PHP, khususnya cara menggunakan ungkapan biasa untuk mengekstrak subrentetan daripada rentetan dengan permulaan dan penghujung tertentu. Melalui contoh ini, anda seharusnya dapat menggunakan ungkapan biasa PHP dengan mahir untuk mencari dan mengekstrak rentetan yang anda perlukan.

Atas ialah kandungan terperinci Ungkapan Biasa PHP: Cara mengekstrak subrentetan dengan permulaan dan akhir tertentu daripada rentetan. 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