Problem poševnice nazaj v PHP
Poševnica nazaj je poseben simbol v PHP. To pomeni, da v nizu, če želimo, da poševnica predstavlja samo sebe, jo moramo podvojiti:
<?php
$str = '\\ \\\\ \\\\\\'; // dejansko je niz '\ \\ \\\'
?>
Poševnica nazaj je tudi poseben simbol regularnih izrazov. To pomeni, da znotraj regularnega izraza, da bi poševnica predstavljala samo sebe, jo je treba napisati kar štirikrat:
<?php
echo preg_replace('#\\\\#', '!', '\\ \\\\ \\\\\\'); // izpiše '! ! !!'
?>
Zdaj pa napišimo regularni izraz, v katerem
je vzorec iskanja takšen: poševnica nazaj
ena ali večkrat. V tem primeru bomo
napisali operator + za 4
simboli pred njim brez združevanja:
<?php
echo preg_replace('#\\\\+#', '!', '\\ \\\\ \\\\\\'); // izpiše '! ! !'
?>
Podan je niz:
<?php
$str = 'a\\b c\\d e\\f';
?>
Poiščite v tem nizu vse podnize po vzorcu črka, poševnica nazaj, črka.
Podan je niz:
<?php
$str = 'a\\b c\\\\d e\\\\\\f';
?>
Poiščite v tem nizu vse podnize po vzorcu črka, poševnica nazaj poljubno količino krat, črka.