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';
?>

මෙම තන්තුවේ සියලුම උපතන්තු සොයන්න අකුර, ආපසු ඇල ගැසීම ඕනෑම ගණනක්, අකුර යන රටාවට අනුව.