PHP-та кері слеш мәселесі

Кері слеш PHP-тің арнайы таңбасы болып табылады. Бұл дегеніміз, жолда слеш өзін білдіргісі келсе, біз оны екі есе көбейтуіміз керек:

php<?php
  $str = '\\ \\\\ \\\\\\'; // шын мәнінде жол '\ \\ \\\'
?>

Кері слеш сонымен қатар регулярды өрнектердің де арнайы таңбасы болып табылады. Бұл дегеніміз, регулярды өрнектің ішінде слеш өзін білдіргісі келсе, оны төрт рет жазу керек:

php<?php
  echo preg_replace('#\\\\#', '!', '\\ \\\\ \\\\\\'); // шығарады '! ! !!'
?>

Енді шамасы бір немесе одан да көп рет кері слеш болатын іздеу үрдісі бар регулярды өрнек жазайық. Осындай жағдайда біз + операторын тобырмай 4 таңба үшін жазамыз:

php<?php
  echo preg_replace('#\\\\+#', '!', '\\ \\\\ \\\\\\'); // шығарады '! ! !'
?>
Задание 1

Берілген жол:

php<?php
  $str = 'a\\b c\\d e\\f';
?>

Осы жолда әріп, кері слеш, әріп үлгісі бойынша барлық ішкі жолдарды табыңыз.

Задание 2

Берілген жол:

php<?php
  $str = 'a\\b c\\\\d e\\\\\\f';
?>

Осы жолда әріп, кері слеш кез келген мөлшерде, әріп үлгісі бойынша барлық ішкі жолдарды табыңыз.