Bagaimana untuk melarikan diri dari garis miring ke belakang dalam ungkapan biasa PHP?

Barbara Streisand
Lepaskan: 2024-11-16 04:20:03
asal
404 orang telah melayarinya

How to Escape Backslashes in PHP Regular Expressions?

Melepaskan garis miring ke belakang dalam Ungkapan Biasa PHP

Untuk melepaskan garis miring ke belakang dalam corak ungkapan biasa PHP, seseorang boleh menggunakan sama ada tiga garis miring ke belakang (\) atau empat garis miring ke belakang (\\). Walaupun kedua-dua pilihan menghasilkan perlawanan yang berjaya, terdapat perbezaan yang ketara dalam tafsiran dan penggunaannya.

Kes Ujian:

Pertimbangkan kes ujian berikut:

// TEST 01: (3 backslashes)
$pattern = "/^[\\]{1,}$/";
$string = '\';

// ----- RETURNS A MATCH -----

// TEST 02: (4 backslashes)
$pattern = "/^[\\]{1,}$/";
$string = '\';

// ----- ALSO RETURNS A MATCH -----
Salin selepas log masuk

Dalam kedua-dua kes, perlawanan dikembalikan, menunjukkan bahawa kedua-dua tiga dan empat garisan belakang boleh digunakan untuk melarikan diri daripada garisan belakang.

Tafsiran dan Penggunaan:

// Matches a single backslash
preg_match( '/\\/', '\' );      // 1

// Fails to match a literal backslash followed by a backslash
preg_match( '/\\\s/', '\s' );   // 0
Salin selepas log masuk
Empat Garisan Kebelakang (\\):
    Sebaliknya, menggunakan empat garis miring ke belakang sentiasa sepadan dengan garis miring terbalik, tanpa mengira watak berikut. Ini kerana garis miring ke belakang keempat terlepas dari garis miring terbalik ketiga, menjadikannya watak literal.
Cadangan:
// Matches a literal backslash followed by any character
preg_match( '/\\\s/', '\s' );   // 1
Salin selepas log masuk

Berdasarkan pemerhatian ini, ia adalah disyorkan untuk sentiasa menggunakan empat garis miring ke belakang (\\) dalam corak regex apabila ingin memadankan garis miring ke belakang. Pendekatan ini memastikan ketekalan dan kebolehramalan dalam padanan corak.

Atas ialah kandungan terperinci Bagaimana untuk melarikan diri dari garis miring ke belakang dalam ungkapan biasa 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