ZebroidФорумПубличный разделВопросыПоиск замена - stack overflow

Поиск замена - stack overflow

30 июля 2018, 11:58
Зарегистрирован: 09 апреля 2011, 14:10

Regexp


<a [^>]*?>(((?!<\/a>).)*?)
\1

Еще один regexp
<img[^>]*?src="((?!~).)*?>
Проект в лс

Комментарий отредактирован 4 раз(а). Последний раз редактировал Vincent 30 июля 2018, 13:07.
08 августа 2018, 20:11
Зарегистрирован: 10 апреля 2012, 00:00
Переполнение стека возникает в используемой библиотеке работы с регулярными выражениями. Это из-за специфики работы просмотров вперед/назад этой библиотеки. Сам автор признаёт наличие проблемы и просто рекомендует не использовать такие констуркции как у вас.

Ваши задачи легко решаются без использования просмотров (бонусом — это еще и работать будет быстрее):
<a [^>]*?>[\s\S]*?</a>
<img[^>]*?src="[^~][^>]+>

К сожалению других альтернатив я вам предложить не могу.