Как я могу исключить два термина из регулярного выражения в userContent.css? - PullRequest
1 голос
/ 27 октября 2019

Я пытаюсь изменить некоторые аспекты кода CSS для моей страницы результатов поиска Google. Я делаю это, редактируя мой userContent.css файл в Firefox.

Я пытаюсь изменить главную страницу результатов (https://www.google.co.uk/search?q=SSD).

Но не на странице изображений (https://www.google.co.uk/search?q=SSD&tbm=isch) или страница результатов покупок (https://www.google.co.uk/search?q=SSD&tbm=shop).

На основании предоставленного ответа здесь , я добавил этот код:

@-moz-document regexp('https://www\\.google\\.co\\.uk.*(?!isch|shop).*')

Но, похоже, не работает исключение isch или shop.

Может кто-нибудь помочь, пожалуйста?

Спасибо

1 Ответ

1 голос
/ 27 октября 2019

Ваш шаблон соответствует этим URL-адресам, потому что после сопоставления .uk вы используете .*(?!isch|shop), который сначала будет соответствовать до конца строки из-за .*

Затем утверждает, что то, что справа, не являетсяisch или shop, который будет иметь значение true, поскольку все символы уже совпадают.

Один из вариантов может заключаться в использовании отрицательного предвкушения (?!.*=(?:isch|shop)$) после сопоставления .uk/, чтобы проверить, не заканчивается ли URL на = isch или =ходите по магазинам, используя .* в отрицательном прогнозе, а затем $ для подтверждения конца строки.

https://www\.google\.co\.uk/(?!.*=(?:isch|shop)$).*$

Regex demo

...