Problem odwrotnego ukośnika w PHP

Odwrotny ukośnik jest znakiem specjalnym PHP. Oznacza to, że w ciągu znaków, jeśli chcemy, aby ukośnik oznaczał sam siebie, musimy go podwoić:

php<?php
  $str = '\\ \\\\ \\\\\\'; // w rzeczywistości ciąg '\ \\ \\\'
?>

Odwrotny ukośnik jest również znakiem specjalnym wyrażeń regularnych. Oznacza to, że wewnątrz wyrażenia regularnego, aby ukośnik oznaczał sam siebie, trzeba go wpisać aż cztery razy:

php<?php
  echo preg_replace('#\\\\#', '!', '\\ \\\\ \\\\\\'); // wypisze '! ! !!'
?>

Spróbujmy teraz napisać wyrażenie regularne, w którym wzorzec wyszukiwania będzie brzmiał: odwrotny ukośnik jeden lub więcej razy. W takim przypadku użyjemy operatora + dla 4 znaków przed nim bez grupowania:

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

Dany jest ciąg:

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

Znajdź w tym ciągu wszystkie podciągi według wzorca litera, odwrotny ukośnik, litera.

Задание 2

Dany jest ciąg:

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

Znajdź w tym ciągu wszystkie podciągi według wzorca litera, odwrotny ukośnik dowolną liczbę razy, litera.