Problema e Backslash-it në PHP
Backslash është një karakter special në PHP. Kjo do të thotë se në një varg, nëse duam që backslash të përfaqësojë vetveten, ne duhet ta dyfishojmë atë:
<?php
$str = '\\ \\\\ \\\\\\'; // në fakt vargu është '\ \\ \\\'
?>
Backslash është gjithashtu një karakter special në shprehjet e rregullta. Kjo do të thotë se brenda shprehjes së rregullt, që backslash të përfaqësojë vetveten, ai duhet shkruar deri në katër herë:
<?php
echo preg_replace('#\\\\#', '!', '\\ \\\\ \\\\\\'); // do të prodhojë '! ! !!'
?>
Le të shkruajmë tani një shprehje të rregullt ku
modeli i kërkimit është: backslash
një ose më shumë herë. Në këtë rast ne
shkruajmë operatorin + për deri në 4
karaktere para tij pa grupim:
<?php
echo preg_replace('#\\\\+#', '!', '\\ \\\\ \\\\\\'); // do të prodhojë '! ! !'
?>
Është dhënë vargu:
<?php
$str = 'a\\b c\\d e\\f';
?>
Gjeni në këtë varg të gjitha nënvargjet sipas modelit shkronjë, backslash, shkronjë.
Është dhënë vargu:
<?php
$str = 'a\\b c\\\\d e\\\\\\f';
?>
Gjeni në këtë varg të gjitha nënvargjet sipas modelit shkronjë, backslash çdo numër herësh, shkronjë.