Если это ваша строка, и вы хотите, чтобы текст между этими тегами p
, то это должно работать ...
/<p\sclass='link'>(.*?)<\/p>/
Причина, по которой вы не работаете, заключается в том, что вы добавляете <\/p>
к вашему не диапазону символов.Он не соответствует буквально, но проверяет не каждый символ в отдельности.
Конечно, я должен упомянуть, что существуют более удобные инструменты для разбора фрагментов HTML (например, анализатор HTML).