Dalam pengaturcaraan PHP, kadangkala anda perlu memintas sebahagian daripada rentetan, tetapi anda tidak tahu lokasi tertentu Dalam kes ini, anda perlu menggunakan ungkapan biasa untuk mengekstrak teks sasaran.
Ungkapan biasa ialah alat pemadanan teks yang berkuasa yang boleh memadankan corak tertentu dalam teks melalui beberapa aksara meta, dengan itu membolehkan carian teks, penggantian, pemintasan dan operasi lain.
Dalam PHP, langkah-langkah untuk menggunakan ungkapan biasa untuk memintas rentetan adalah seperti berikut:
preg_match($pattern, $string, $matches);
di mana $pattern mewakili biasa corak ungkapan dan $rentetan mewakili teks Sasaran, $padanan mewakili tatasusunan output hasil yang sepadan.
Kod sampel:
$text = "Hari ini 1 September 2019";
$pattern = "/d{4}-d{2}-d{2 }/ ";
preg_match($pattern, $text, $matches);
print_r($matches);
Hasil keluaran:
Array
(
[0] => 2019-09-01
)
Dalam kod di atas, corak ungkapan biasa "/d{4}-d{2}-d{2}/" bermaksud aksara tarikh yang sepadan dalam String format yyyy-mm-dd , melalui fungsi preg_match(), rentetan yang sepadan dengan corak dalam teks sasaran boleh diekstrak dan disimpan ke dalam tatasusunan $matches.
Sintaks fungsi preg_replace() adalah seperti berikut:
preg_replace($pattern, $replace, $string);
Di mana, $pattern mewakili corak ungkapan biasa , $replace mewakili rentetan yang akan diganti dan $string mewakili teks sasaran.
Kod contoh:
$text = "Ini adalah sekeping teks yang perlu diganti";
$pattern = "/need/";
$replace = "Keberanian";
$text_new = preg_replace($pattern, $replace, $text);
echo $text_new;
Hasil keluaran:
Ini adalah teks yang berani untuk diganti
Dalam kod di atas, corak ungkapan biasa "/need/" bermaksud memadankan rentetan "need" Gunakan fungsi preg_replace() untuk menggantikan semua rentetan yang sepadan dengan corak dalam teks sasaran rentetan "berani", dan dapatkan teks baharu selepas penggantian.
Sintaks fungsi preg_split() adalah seperti berikut:
preg_split($pattern, $string);
Di mana, $pattern mewakili ungkapan biasa corak, $string Mewakili teks sasaran.
Kod sampel:
$text = "a,b,c,d,e";
$pattern = "/,/";
$array = preg_split( $pattern, $text);
print_r($array);
Hasil keluaran:
Array
(
[0] => a [1] => b [2] => c [3] => d [4] => e
)
Dalam kod di atas, corak ungkapan biasa "/,/" bermaksud aksara koma yang sepadan Gunakan fungsi preg_split() untuk menggunakan semua aksara yang sepadan dengan corak dalam teks sasaran sebagai pembatas, bahagikan teks sasaran kepada berbilang subrentetan dan simpannya. kepada Array $array.
Ringkasnya, menggunakan ungkapan biasa untuk memintas rentetan dalam PHP boleh dicapai melalui fungsi preg_match(), fungsi preg_replace() dan fungsi preg_split(). Dalam amalan khusus, anda perlu memilih fungsi yang sesuai mengikut keperluan yang berbeza, dan melalui pembelajaran dan latihan, kuasai kemahiran menggunakan ungkapan biasa untuk melaksanakan operasi rentetan dengan lebih cekap.
Atas ialah kandungan terperinci Bagaimana untuk memintas rentetan menggunakan ungkapan biasa dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!