Я анализирую файл с деталями адреса. Иногда адрес имеет один номер факса, иногда он имеет два номера факса (в отдельных строках). Как я могу сказать «Если есть второй номер факса, возьмите его. Если нет, забудьте об этом» моему механизму регулярных выражений?
Вот пример с одним номером факса:
Тел: +1 212 12345
Факс: +1 212 23456
Район HQ: Спрингфилд
и с двумя номерами факса:
Тел: +1 212 12345
Факс: +1 212 23456
Факс: +1 212 34567
Район HQ: Спрингфилд
Я использую PHP preg_match_all
для получения совпадений:
$shop_name_regexp =
'/' .
'Tel.*?:(?<telephone>.*?)\n' . // Tel: or Telephone:
'Fax:(?<fax>.*?)\n.*?' .
'/s';
preg_match_all($shop_name_regexp, $string, $hit);
Я думал, что смогу получить второй номер факса с чем-то вроде [Fax:(?<fax2>.*?)]?
, но я не могу заставить его работать. Любая помощь приветствуется.