Чтобы позволить .
совпадать с новой строкой, включите режим SingleLine / DOTALL - либо с помощью флага в вызове функции (как показывает ответ Абеля ), либо с помощью встроенного модификатора (?s)
, например, так: для всего выражения:
"(?s)return new_lightox\(this\);"">.+</a>"
Или только для определенной его части:
"return new_lightox\(this\);"">(?s:.+)</a>"
Возможно, было бы лучше сделать еще один шаг и сделать это:
"return new_lightox\(this\);"">(?s:(?!</?a).+)</a>"
Что должно препятствовать тому, чтобы закрывающая </a>
принадлежала другой ссылке.
Однако, вам нужно быть очень здесь настороженно - неясно, что вы делаете в целом, но регулярное выражение не хороший инструмент для разбора HTML с, и может вызвать все виды проблем. Взгляните на использование анализатора HTML DOM вместо , например HtmlAgilityPack .