PHP-ում հակադարձ շլեշի խնդիրը
Հակադարձ շլեշը PHP-ի հատուկ նիշ է: Սա նշանակում է, որ տողում, եթե մենք ցանկանում ենք, որ շլեշը նշանակի ինքն իրեն, մենք պետք է այն կրկնապատկենք.
<?php
$str = '\\ \\\\ \\\\\\'; // իրականում տողը '\ \\ \\\'
?>
Հակադարձ շլեշը նաև ռեգուլյար արտահայտությունների հատուկ նիշ է: Սա նշանակում է, որ ռեգուլյար արտահայտության ներսում, որպեսզի շլեշը նշանակի ինքն իրեն, այն պետք է գրել ամբողջ չորս անգամ.
<?php
echo preg_replace('#\\\\#', '!', '\\ \\\\ \\\\\\'); // կարտադրի '! ! !!'
?>
Եկեք այժմ գրենք ռեգուլյար արտահայտություն, որում
որոնման ձևանմուշը կլինի այսպիսին. հակադարձ շլեշ
մեկ կամ ավելի անգամ: Այդպիսի դեպքում մենք
կգրենք + օպերատորը ամբողջ 4
նիշերի համար դրա դիմաց առանց խմբավորման.
<?php
echo preg_replace('#\\\\+#', '!', '\\ \\\\ \\\\\\'); // կարտադրի '! ! !'
?>
Տրված է տող.
<?php
$str = 'a\\b c\\d e\\f';
?>
Գտեք այս տողում բոլոր ենթատողերը ըստ ձևանմուշի տառ, հակադարձ շլեշ, տառ:
Տրված է տող.
<?php
$str = 'a\\b c\\\\d e\\\\\\f';
?>
Գտեք այս տողում բոլոր ենթատողերը ըստ ձևանմուշի տառ, հակադարձ շլեշ ցանկացած քանակությամբ անգամ, տառ: