Прежде всего, вы используете /
в качестве разделителя в своем регулярном выражении. Это нормально, но вы должны избегать косых черт внутри регулярного выражения, как это:
/<p class=\"psku\">SOMETHINGREGEX<\/span><\/p>/
Если вы похожи на меня и думаете, что это выглядит беспорядочно, вы также можете выбрать другой символ в качестве разделителя:
@<p class=\"psku\">SOMETHINGREGEX</span></p>@
Кроме того, что внутри вашего SOMETHINGREGEX
? Я подозреваю, что он содержит точку (.
). Чтобы точка соответствовала символам новой строки и растягивалась на несколько строк, необходимо добавить модификатор s
:
@<p class=\"psku\">SOMETHINGREGEX</span></p>@s
Однако, как уже упоминалось @konrados, использование DOMDocument было бы лучшим выбором здесь. Использование регулярных выражений для разбора HTML очень ненадежно, так как вам приходится учитывать множество вариантов форматирования: теги, написанные заглавными буквами, пробелы в местах, которые вы не ожидаете, и т. Д. Однако, если вы уверены, что весь ваш ввод отформатированный таким же образом, регулярное выражение должно сделать свое дело.