Есть файл вида:
<li><a href="<?php echo MY_HOST.'data/page/text'; ?>">Текст</a></li>
<li><a href="<?php echo MY_HOST.'data/page2/text2'; ?>">Текст</a></li>
<li><a href="<?php echo MY_HOST.'data/page3/text3'; ?>">Текст</a></li>
Нужно извлечь text, text2 и т. д. Сложность в том, что всё что находится между двух слешей (в данном примере это "page") может меняться.
Предполагаю, что нужно разобрать файл на строки, и в цикле пройти регуляркой:
preg_match('#<li><a href="<\?php echo MY_HOST.\'data/\w*(.+?)\';#i', $string, $text);
Но увы, в синтаксисе регулярных выражений я не силён и что-то не работает.
Может быть нужно что-то вроде "#/X/(.+?)';#i" где X - это выражение описывающее произвольный текст на латинице.
То есть мы ищем что-то находящееся после второго слеша и до символов '; Но как это правильно оформить?