#swift #regex #safari #safari-extension
#swift #регулярное выражение #safari #safari-расширение
Вопрос:
Я разрабатываю расширение Safari (https://github.com/bcye/Hello-Goodbye в папке Safari) и пытаюсь заблокировать виджеты чата.
Я попытался заблокировать (в синтаксисе расширения Chrome) *://widget.intercom.io/*
Итак, я пытаюсь заблокировать http или https и любой путь на widget.intercom.io
Я опробовал эти два регулярных выражения блокировки Safari (документация: https://developer.apple.com/documentation/safariservices/creating_a_content_blocker ):
https?://widget.intercom.io/(.*)
https?://widget.intercom.io/.
Оба не работают.
Я пытался отлаживать их на https://regex101.com / и это говорит мне, что первый должен сработать.
Ссылка на регулярное выражение101: https://regex101.com/r/N3jUdW/1
Комментарии:
1. Поделитесь с вами точной страницей регулярных выражений 101, чтобы мы могли видеть ваши тестовые данные и играть с ними сами
2. @Alexander Я отредактировал сообщение со ссылкой regex101.com/r/N3jUdW/1
3. Я не знаю, в каком контексте используются эти регулярные выражения, но я подозреваю, что одна из проблем, если такие символы
/
интерпретируются как «escape-последовательность/
«,n
интерпретируется как «escape-последовательностьn
» (которая представляет новые строки). Скорее всего, вам нужно будет удвоить свои косые черты, чтобы у вас было\/
. Первая косая черта запускает escape-последовательность, вторая «завершает» ее и говорит: «нет, нет, я хотел литерал/
«, который затем переходит в окончательное регулярное выражение, за которым следует/
.4. Покажите код, как в нем используются эти шаблоны.
/
нормально, но это зависит от варианта использования.