Rumah >pembangunan bahagian belakang >tutorial php >Ungkapan biasa PHP: Cara mengekstrak subrentetan antara berbilang aksara tertentu daripada rentetan dan menggabungkannya menjadi rentetan

Ungkapan biasa PHP: Cara mengekstrak subrentetan antara berbilang aksara tertentu daripada rentetan dan menggabungkannya menjadi rentetan

王林
王林asal
2023-06-23 08:51:361754semak imbas

Ekspresi biasa PHP ialah alat berkuasa yang boleh digunakan untuk memadankan dan mengekstrak teks tertentu dalam rentetan. Dalam artikel ini, kami akan memperkenalkan cara menggunakan ungkapan biasa PHP untuk mengekstrak subrentetan antara berbilang aksara tertentu dalam rentetan dan menggabungkannya menjadi rentetan.

Sebelum kita mula, mari kita lihat beberapa konsep asas dalam ungkapan biasa:

  1. Corak: ungkapan biasa yang digunakan untuk pemadanan.
    Sebagai contoh, jika kita ingin memadankan semua nombor dalam rentetan, maka kita boleh menggunakan corak: /d/
  2. Set aksara: digunakan untuk memadankan mana-mana aksara dalam set aksara.
    Sebagai contoh, jika kita ingin memadankan semua huruf besar dalam rentetan, maka kita boleh menggunakan set aksara: [A-Z]
  3. Kumpulan penangkapan: ungkapan biasa yang digunakan untuk memadankan dan mengekstrak rentetan.
    Sebagai contoh, jika kita ingin memadankan semua rentetan dalam rentetan yang bermula dengan 'data:' dan berakhir dengan ';base64,' dan mengekstrak bahagian yang dikodkan base64, maka kita boleh menggunakan ungkapan biasa: /data : (1);base64,(.)/

Sekarang, mari lihat cara menggunakan Formula ungkapan biasa PHP untuk mengekstrak subrentetan antara berbilang aksara tertentu dalam rentetan dan menggabungkannya menjadi satu rentetan. Kami menganggap bahawa rentetan itu ialah:

$string = "Hello #world#, this is a #test# string.";

Kami mahu mengekstrak semua rentetan bermula dengan # dan berakhir dengan # subrentetan pada penghujungnya dan gabungkannya menjadi rentetan, kemudian kita boleh menggunakan ungkapan biasa dan fungsi preg_match_all() untuk menyelesaikan tugasan ini, kodnya adalah seperti berikut:

$pattern = '/#(.*?)#/'; //定义正则表达式
preg_match_all($pattern, $string, $matches); //匹配子字符串
$result = implode('', $matches[1]); //拼接为一个字符串
echo $result; //输出结果

Dalam kod di atas, kami menggunakan #( .*?)# untuk mewakili corak rentetan yang ingin kita padankan. Antaranya, ? bermaksud memadankan sesedikit mungkin untuk mengelakkan padanan kandungan antara berbilang #s. Kemudian gunakan fungsi preg_match_all() untuk memadankan semua subrentetan yang sepadan dengan corak dan simpannya dalam tatasusunan $matches. Akhir sekali, gunakan fungsi implode() untuk menggabungkan semua subrentetan yang sepadan ke dalam rentetan dan mengeluarkan hasilnya.

Ringkasan: Ungkapan biasa PHP ialah alat yang sangat berguna yang boleh digunakan untuk memadankan dan mengekstrak teks tertentu dalam rentetan. Dalam artikel ini, kami memperkenalkan cara menggunakan ungkapan biasa PHP untuk mengekstrak subrentetan antara berbilang aksara tertentu dalam rentetan dan menggabungkannya menjadi satu rentetan. Dengan menguasai teknik ini, anda boleh mengendalikan rentetan kompleks dengan mudah dan meningkatkan kecekapan kod.


  1. ;

Atas ialah kandungan terperinci Ungkapan biasa PHP: Cara mengekstrak subrentetan antara berbilang aksara tertentu daripada rentetan dan menggabungkannya menjadi 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