За последние 24 часа нас посетили 22557 программистов и 1140 роботов. Сейчас ищут 646 программистов ...

Экранирование слэша в регулярных выражениях и поиск точного вхождения

Тема в разделе "Регулярные выражения", создана пользователем thislegion, 12 май 2022.

  1. thislegion

    thislegion Новичок

    С нами с:
    12 май 2022
    Сообщения:
    16
    Симпатии:
    0
    Подскажите как экранировать прямой слэш и как находить в этом случае прямое вхождение?
    В этом примере вхождение не найдено.

    PHP:
    1. <?php
    2.  
    3. echo $uri = '/test2.php';
    4. //$pattern = str_replace("/", "\/", $pattern); // Экранируем прямой слэш
    5.  
    6. if (preg_match("/\/[a-z]2.php')/", $uri)) {
    7.  
    8.     echo "Вхождение найдено" . PHP_EOL;
    9.  
    10. } else {
    11.  
    12.     echo "Вхождение НЕ найдено." . PHP_EOL;
    13. }
    14.  
    15.  
    16. ?>
     
  2. Sail

    Sail Старожил

    С нами с:
    1 ноя 2016
    Сообщения:
    1.591
    Симпатии:
    360
    Квантификатора в шаблоне не хватает.
     
  3. thislegion

    thislegion Новичок

    С нами с:
    12 май 2022
    Сообщения:
    16
    Симпатии:
    0
    вы бы лучше привели пример
     
  4. antoniii

    antoniii Активный пользователь

    С нами с:
    16 мар 2022
    Сообщения:
    417
    Симпатии:
    71
    PHP:
    1. if(preg_match("/^\/[a-z]+2\.php$/",$uri)){
    2. //код
    3. }
    но будет совпадать не только с этой строкой
    а еще с a2.php t2.php abcd2.php и т. д.
     
    thislegion нравится это.