Я использую preg_match_all () для сопоставления некоторых строк.
это мой код
preg_match_all('@([a-zA-Z0-9,\(\)\-\s\.\#:]*)Date From: [0-9]{2}/[0-9]{2}/[0-9]{4}([, \s]*[0-9]{2}/[0-9]{2}/[0-9]{4})*\s(Division Type: [A-Z ]*)*@m', $string, $match);
это выход
https://regex101.com/r/hE3iO2/1
Теперь я хочу добавить /
в первую группу, чтобы включить буквальное /
в группе захвата, и это произойдет
из этого
([a-zA-Z0-9,\(\)\-\s\.\#:]*)
к этому
([a-zA-Z0-9,\(\)\-\s\.\#:/]*)
https://regex101.com/r/wM1rW7/1
Как я могу предотвратить это при добавлении /
в группу?
Сделайте свое регулярное выражение не жадным:
([a-zA-Z0-9,()\s.#:/-]*?)Date From: [0-9]{2}/[0-9]{2}/[0-9]{4}([, \s]*[0-9]{2}/[0-9]{2}/[0-9]{4})*\s(Division Type: [A-Z ]*)*
Других решений пока нет …