Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Menukar Ungkapan Biasa ereg ke preg dalam PHP?

Bagaimana untuk Menukar Ungkapan Biasa ereg ke preg dalam PHP?

Barbara Streisand
Lepaskan: 2024-12-20 15:02:14
asal
234 orang telah melayarinya

How to Convert ereg Regular Expressions to preg in PHP?

Penukaran daripada Ereg kepada Preg dalam PHP

Dalam PHP, ungkapan biasa POSIX (ereg) telah ditamatkan sejak versi 5.3.0. Untuk memudahkan peralihan, adalah penting untuk memahami cara menukar ungkapan ereg lama kepada PCRE (Perl Compatible Regular Expressions) (preg).

Perbezaan Sintaks

Sintaks utama perbezaan adalah penambahan pembatas dalam preg. Sebagai contoh, ungkapan ereg berikut:

eregi('^hello world');
Salin selepas log masuk

hendaklah ditukar kepada ungkapan preg_match seperti ini:

preg_match('/^hello world/', $str);
Salin selepas log masuk

Pembatas boleh menjadi pelbagai aksara bukan abjad angka, dengan pilihan biasa ialah ~, /, dan #.

Padanan Kurungan

Selain itu, anda boleh menggunakan kurungan yang sepadan sebagai pembatas:

preg_match('[^hello]', $str);
preg_match('(^hello)', $str);
preg_match('{^hello}', $str);
Salin selepas log masuk

Pembatas Melarikan Diri

Jika pembatas anda muncul dalam senarai biasa ungkapan, elakkannya menggunakan garis miring ke belakang:

eregi('^/hello', $str);
preg_match('/^\/hello/', $str);
Salin selepas log masuk

Untuk melarikan diri semua pembatas dan aksara terpelihara, gunakan preg_quote:

$expr = preg_quote('/hello', '/');
preg_match('/^'.$expr.'/', $str);
Salin selepas log masuk

Pengubahsuai

PCRE menyokong pengubah suai untuk pelbagai ciri. Contohnya, pengubah suai tidak peka huruf besar-kecil i menggantikan fungsi eregi:

eregi('^hello', 'HELLO');
preg_match('/^hello/i', 'HELLO');
Salin selepas log masuk

Penukaran Contoh

Dalam contoh yang anda berikan, ungkapan biasa tidak diperlukan. Sebaliknya, anda boleh menggunakan fungsi PHP berikut:

stripos($str, 'hello world') === 0
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Menukar Ungkapan Biasa ereg ke preg dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan