Я хочу, чтобы найти строку между первым и последним подчеркивания (_
) из приведенных ниже строкПолучить строку между первым и последним пространственным характером
Я попытался это:
$s = '23_The_Sample_Book_145236985.pdf';
$matches = [];
$t = preg_match('/\_(.*?)\_/', $s, $matches);
print_r($matches[1]);
Я хочу, чтобы получить выход как ...
The_Sample_Book
Но я получаю как ...
The
Является ли '$ s' обязательным? –
Просто сделайте это жадным: '(. *?)' -> '(. *)' [Объяснено просто: '(. *?)' -> Возьмите минимум, чтобы сделать совпадение; '(. *)' -> Принять как можно больше, чтобы сделать матч] – Rizier123
yes $ s строка показывает мой обновленный ответ. – vishuB