Rumah >pembangunan bahagian belakang >tutorial php >Mengapakah `preg_match` Melemparkan 'Ralat Pembatas,' dan Bagaimana Saya Boleh Membetulkannya?

Mengapakah `preg_match` Melemparkan 'Ralat Pembatas,' dan Bagaimana Saya Boleh Membetulkannya?

Linda Hamilton
Linda Hamiltonasal
2024-12-05 15:23:091003semak imbas

Why Does `preg_match` Throw a

Ralat Pembatas dalam preg_match

Apabila menggunakan fungsi preg_match untuk padanan corak, adalah penting untuk menentukan pembatas untuk mentakrifkan permulaan dengan jelas dan hujung corak. Kegagalan berbuat demikian boleh mengakibatkan ralat "Pembatas mestilah bukan abjad angka atau garis miring ke belakang".

Kod yang disediakan, yang bertujuan untuk mengekstrak rentetan dalam petikan tunggal, menghadapi ralat ini kerana corak tidak mempunyai pembatas. Untuk membetulkan ini, pembatas, seperti garis miring ke hadapan (/), mesti ditambah.

Kod Dibetulkan:

$string1 = "My name is 'Kate' and im fine";
$pattern = "/My name is '(.*)' and im fine/"; // With / as a delimiter
preg_match($pattern, $string1, $matches);
echo $matches[1];

Menambah pembatas menjelaskan corak dan membolehkan padanan yang betul. Garis miring ke hadapan berfungsi sebagai penanda permulaan dan penamat corak, dengan berkesan melampirkan kriteria padanan.

Atas ialah kandungan terperinci Mengapakah `preg_match` Melemparkan 'Ralat Pembatas,' dan Bagaimana Saya Boleh Membetulkannya?. 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