Я пытаюсь создать регулярное выражение для удаления ссылок из содержимого, если оно не содержит 1 из 2 условий.Регулярное выражение с отрицательным внешним видом
<a.*?href=[""'](http[s]?:\/\/(.*?)\.link\.com)?\/(?!m\/).*?<\/a>
Это будет соответствовать любой ссылке на link.com, которая не имеет m/в конце раздела домена. Я хочу, чтобы изменить это немного, так что does't матч URL-адресов, которые ссылки на файлы в формате PDF, независимо от имеющего м/в URL, я придумал:
<a.*?href=["'](http[s]?:\/\/(.*?)\.brodies\.com)?\/(?!m\/).*?\.(?!pdf)["'].*?<\/a>
Что ооо так очень близко, за исключением теперь будет соответствовать только в том случае, если URL-адрес имеет «.». в конце - я понимаю, почему он это делает. Кажется, я не могу сделать "." необязательно, поскольку это вызывает нежелательный шаблон до «.». чтобы продолжать идти до тех пор, пока не попадает в [ " ']
Любая помощь будет хорошо, чтобы помочь решить эту проблему.
Благодаря Пол
Спасибо, довольно полное выражение, и да, это может быть недостаточно для всех случаев, но я думаю, что это природа зверя. Выражение, которое я построил, было достаточно хорошим, чтобы соответствовать ссылкам, которые встречаются там, где они используются, кроме ссылок на PDF. Спасибо за это, я отдам это. –