Добавить rel = & quot; лайтбокс & quot; для каждого тега, включая изображение, но не для тегов, которые имеют класс = «nothis», как?

я использую этот код, чтобы добавить на мою страницу тег с img tag rel = «lightbox» следующим образом:

$petropas1 = preg_replace('~<a(?=[^>]+>\s*<img)~','<a rel="lightbox"',$petropas1);

Пока здесь все в порядке, но что если я хочу исключить изображения, у которых у тега есть класс = «nothis»? Я имею в виду, когда существует это:

<a href="" class="nothis"><img src="" alt="" title="" border="0" /></a>

Я хочу, чтобы регулярное выражение, которое я показал вам ранее, добавляло rel = «lightbox» к каждому тегу перед img, но не к тем, у которых тег имеет класс = «nothis».

Можете ли вы сказать мне, как изменить регулярное выражение, чтобы сделать эту работу?

Спасибо

1

Решение

Используйте отрицательный взгляд внутри положительного взгляда, чтобы установить условие, которое соответствует любому, но не class="nothis"или же > один или несколько раз.

<a(?=(?:(?!class="nothis")[^>])+>\s*<img)

DEMO

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]