Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Mengekstrak Berbilang Segmen Teks yang Dilampirkan dalam Kurungan Persegi menggunakan PHP?
Menangkap Berbilang Segmen Teks Antara Kurungan Segi Empat dalam PHP
Soalan:
Cara menangkap semua segmen teks yang disertakan dalam kurungan segi empat sama dalam sesuatu yang diberikan rentetan?
Jawapan:
Untuk menangkap berbilang segmen teks antara kurungan segi empat sama, gunakan ungkapan biasa berikut:
/\[[^\]]*\]/
Reeks reg ini sepadan dengan mana-mana rentetan yang bermula dengan kurungan segi empat sama, mengandungi sebarang bilangan aksara bukan kurungan segi empat sama, dan berakhir dengan segi empat sama. kurungan.
Untuk mengekstrak segmen yang ditangkap, gunakan fungsi preg_match_all(). Fungsi ini mengambil corak regex dan rentetan sasaran sebagai input dan mengembalikan tatasusunan yang mengandungi semua padanan. Kod PHP berikut menunjukkan cara untuk menangkap berbilang segmen teks menggunakan regex ini:
$text = '[This] is a [test] string, [eat] my [shorts].'; preg_match_all("/\[[^\]]*\]/", $text, $matches); var_dump($matches[0]);
Kod ini menghasilkan output berikut:
array(4) { [0] => string(5) "[This]" [1] => string(5) "[test]" [2] => string(5) "[eat]" [3] => string(7) "[shorts]" }
Alternatif untuk Mengekstrak Teks tanpa Kurungan:
Untuk mengeluarkan hanya teks dalam kurungan segi empat sama, gunakan yang berikut regex:
/\[([^\]]*)\]/
regex ini sepadan dengan mana-mana rentetan yang bermula dengan kurungan segi empat sama, mengandungi sebarang bilangan aksara bukan kurungan segi empat sama dan berakhir dengan kurungan segi empat sama. Aksara dalam kurungan dikumpulkan menggunakan kurungan.
Untuk mengekstrak segmen yang ditangkap tanpa kurungan segi empat sama, gunakan kumpulan tangkapan pertama, seperti yang ditunjukkan dalam kod PHP berikut:
preg_match_all("/\[([^\]]*)\]/", $text, $matches); var_dump($matches[1]);
Kod ini menghasilkan output berikut:
array(4) { [0] => string(4) "This" [1] => string(4) "test" [2] => string(3) "eat" [3] => string(6) "shorts" }
Atas ialah kandungan terperinci Bagaimana untuk Mengekstrak Berbilang Segmen Teks yang Dilampirkan dalam Kurungan Persegi menggunakan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!