|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] Регулярное выражение для поиска и замены в Telegram Instant View |
|
|
Любой язык - [решено] Регулярное выражение для поиска и замены в Telegram Instant View
|
(*.*) Сообщения: 36567 |
Всем привет!
Хочу запилить Instant View для блога, сейчас открылось окно, когда можно добавлять свой домен. У них сейчас вторая версия IV, где считается невалидным HTML-кодом img вложенный в p, так: <p><img ...></p>. В первой версии такой проблемы не было. Я в регулярных выражениях не силен, тем более с кастомным парсером. Проблема У меня или WordPress или платформа Genesis именно такой код и создает. Например, для этой статьи я использую чистый HTML без <p>, а в F12 вижу <p> <img src="/blog/wp-content/uploads/blog-images/date-modified01.png" height="149" width="280" alt="PowerShell дата создания файла"> </p> <p><img src="/blog/wp-content/uploads/blog-images/date-modified01.png" height="149" width="280" alt="PowerShell дата создания файла" /></p> Вырезать <p> и </p> в таких конструкциях как выше, т.е. получить заменой <img src="/blog/wp-content/uploads/blog-images/date-modified01.png" height="149" width="280" alt="PowerShell дата создания файла"> <img src="/blog/wp-content/uploads/blog-images/date-modified01.png" height="149" width="280" alt="PowerShell дата создания файла" /> Документация (Из РФ может понадобиться прокси или VPN) Как я понимаю, можно использовать match или replace (чуть ниже на странице). Второй я использовал для других целей без регекспов, он работал. Тренироваться при наличии аккаунта ТГ можно тут https://instantview.telegram.org/my/ Надо скормить ему URL статьи. Там, конечно, страшненько все выглядит. Мой шаблон прикреплен. В текущем виде он выдает ошибку Element <img> is not supported in <p>: <img src="/blog/wp-content/uploads/blog-images/date-modified01.png" height="149" width="280" alt="PowerShell дата создания файла"/> P.S. Пошиковский регексп к их match не подошел |
|
------- Отправлено: 22:33, 07-02-2019 |
Crazy Сообщения: 1227
|
Профиль | Отправить PM | Цитировать Не совсем понятно откуда будут поступать данные... допустим, что из файла...
Далее: а будет ли валидным например такой вариант: <p> <img src="/blog/wp-content/uploads/blog-images/date-modified01.png" height="149" width="280" alt="PowerShell дата создания файла"> <img src="/blog/wp-content/uploads/blog-images/date-modified01.png" height="149" width="280" alt="PowerShell дата создания файла"> </p> Если строго по условиям из шапки, то: powershell |
------- Отправлено: 00:23, 08-02-2019 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
(*.*) Сообщения: 36567
|
Профиль | Сайт | Отправить PM | Цитировать Цитата YuS_2:
Цитата YuS_2:
Цитата YuS_2:
Цитата YuS_2:
REGEXP_ERROR: regexp pattern is empty |
||||
------- Отправлено: 01:17, 08-02-2019 | #3 |
Crazy Сообщения: 1227
|
Профиль | Отправить PM | Цитировать Цитата Vadikan:
Тогда почему match? Ведь: Цитата Vadikan:
Цитата Vadikan:
Цитата Vadikan:
И это: Цитата Vadikan:
Вот это: Цитата Vadikan:
Правда, eсть подозрение, что область поиска сводится не ко всей dom-структуре, а ограничивается конкретным элементом, описанным в xpath. Поэтому, необходимо расширить область поиска, т.е. указать надо не сам удаляемый элемент <p>, а родительский. Можно попробовать это проверить так: а потом уже использовать @replace |
||||||
------- Отправлено: 08:37, 08-02-2019 | #4 |
(*.*) Сообщения: 36567
|
Профиль | Сайт | Отправить PM | Цитировать |
|
------- Отправлено: 10:58, 08-02-2019 | #5 |
Crazy Сообщения: 1227
|
Профиль | Отправить PM | Цитировать Цитата Vadikan:
не поддерживаются следующие конструкции а именно нет поддержки: в итоге получилось: - насколько работоспособен шаблон, не проверял... вечером, в спокойной обстановке гляну... ЗЫ Проверил регулярки в Instant View. Да, этот вариант обязан работать правильно. |
|
------- Последний раз редактировалось YuS_2, 08-02-2019 в 18:34. Причина: Дополнение. Отправлено: 14:42, 08-02-2019 | #6 |
(*.*) Сообщения: 36567
|
Профиль | Сайт | Отправить PM | Цитировать YuS_2, спасибо. Регулярное выражение работает, но задачу не решает.
Если применять его к
Второе неочевидно. Картинка видна в левой панели (исходная статья). Если в правой панели навести курсор между абзацами, где она должна быть, то при корректном результате там видно Photo (иногда сразу сопровождается урлом картинки). В редакторе это можно проверить, сравнив с версией 1.0. Надо закомментировать добавленное регулярное выражение и новую версию в первой строке так: https://i.imgur.com/iAQWIRa.png В ТГ это можно проверить так: нажать View in Telegram в правом верхнем углу → отправить ссылку себе в ТГ в сохраненные → смотреть на смартфоне. В общем, это единственный нормальный способ просмотреть реальный IV. |
------- Отправлено: 22:35, 08-02-2019 | #7 |
Crazy Сообщения: 1227
|
Профиль | Отправить PM | Цитировать Цитата Vadikan:
С наскока победить не получилось, надо читать мануалы на этот Instant View. Похоже с тегами регулярки напрямую не работают как с текстом... завтра попробую разобраться, что там к чему. Цитата Vadikan:
![]() |
||
------- Отправлено: 00:23, 09-02-2019 | #8 |
(*.*) Сообщения: 36567
|
Профиль | Сайт | Отправить PM | Цитировать Цитата YuS_2:
Там есть еще https://instantview.telegram.org/docs#replace-tag но не похоже, что он принимает регэкспы. В примерах этого нет, и в лоб не прокатывает. Простая замена в нем работает у меня. Так я превращал |
|
------- Отправлено: 01:11, 09-02-2019 | #9 |
Crazy Сообщения: 1227
|
Профиль | Отправить PM | Цитировать Цитата Vadikan:
А для решения проблемы, надо просто заменить тег <p> с дочерним элементом <img/> на тег <figure>. Сделать это можно, как раз, с помощью команды @replace_tag так: или так: - это эквивалентные записи, вторая просто укороченная и в части команды, и в части самого xPath. |
|
------- Последний раз редактировалось YuS_2, 09-02-2019 в 09:31. Отправлено: 09:26, 09-02-2019 | #10 |
|
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Любой язык - простое регулярное выражение для проверки email | boguxa | Скриптовые языки администрирования Windows | 1 | 12-03-2018 22:02 | |
[решено] Регулярное выражение для Total Commander'a | MI-5 | Хочу все знать | 1 | 26-10-2017 22:18 | |
Регулярное выражение | venuko | Вебмастеру | 11 | 02-08-2010 18:18 | |
Регулярное выражение для проверки денежной суммы | BuilderMan | Вебмастеру | 9 | 23-08-2006 11:24 | |
Регулярное выражение | benya | Вебмастеру | 27 | 26-08-2005 14:34 |
|