Обработка текста после парсинга. Или как использовать регулярные выражения

Festival

Client
Регистрация
19.03.2013
Сообщения
5
Благодарностей
1
Баллы
3
Я новичок, в программировании не шарю)

Возник такой вопрос, я напарсил текст, а он содержит не нужные элементы html кода. Как мне удалить весь этот мусор? Плюс нужно разбить текст на абзацы и после первого абзаца поставить тег подробнее?

Читая на форуме, понял, что для обработки текста используются регулярные выражения. Но как их использовать в zeno и как их писать самому я так и не понял.

Подскажите пожалуйста, какое рег. выражение нужно прописать и где это в ProjectMaker, что бы решить свою проблему? И где можно почитать новичку литературу для понимания, как самому в дальнейшем писать выражения для zeno? (т.к. читал в инете что регулярки имеют разные вариации под разные языки програмироватия)

П.с. думаю многих новичков интересует данный вопрос.
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 707
Баллы
113
  • Спасибо
Реакции: Festival

Festival

Client
Регистрация
19.03.2013
Сообщения
5
Благодарностей
1
Баллы
3
Регулярные выражения используются стандартные через экшен Обработка текста - Regex.
http://wiki.zennolab.com/doku.php?id=ru:creating-a-regular-expressions
Спасибо, разобрался как вставлять регулярное выражение, но как добавить в экшен текст текущей страницы для его обработки?
 

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 450
Благодарностей
1 881
Баллы
113
Спасибо, разобрался как вставлять регулярное выражение, но как добавить в экшен текст текущей страницы для его обработки?
{-Page.Dom-} DOM текст страницы
{-Page.Source-} Исходный код страницы
{-Page.Text-} Текст страницы.

Нужный вариант вставляете в поле для обработки и вместо него будет текст сайта.
 
  • Спасибо
Реакции: Festival

Festival

Client
Регистрация
19.03.2013
Сообщения
5
Благодарностей
1
Баллы
3
{-Page.Dom-} DOM текст страницы
{-Page.Source-} Исходный код страницы
{-Page.Text-} Текст страницы.

Нужный вариант вставляете в поле для обработки и вместо него будет текст сайта.
Всё работает, спасибо!)
 

proekt-gaz

Client
Регистрация
13.01.2013
Сообщения
94
Благодарностей
5
Баллы
8
В продолжение темы...
Мне нужно спарсить текст находящийся на странице между кавычками, регулярное выражение такое ".*" Все как бы отлично текст нахожу но мне нужен не текст в кавычках, а просто текст. Как удалить кавычки?
 

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 450
Благодарностей
1 881
Баллы
113
Можно удалить экшеном обработка текста - замена.
Можно парсить без взятия кавычек. Вот такая регулярка - (?<=").*(?=")
 
  • Спасибо
Реакции: proekt-gaz

proekt-gaz

Client
Регистрация
13.01.2013
Сообщения
94
Благодарностей
5
Баллы
8
daniilneet, спасибо за код, но в нем есть небольшой недостаток, в результате его применения в итоге сохраняется искомая фраза, но она окружена не кавычками, а пробелами!!! Как все таки вырезать искомую фразу из кавычек, но без кавычек и без пробелов в итоге?
 

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 450
Благодарностей
1 881
Баллы
113
daniilneet, спасибо за код, но в нем есть небольшой недостаток, в результате его применения в итоге сохраняется искомая фраза, но она окружена не кавычками, а пробелами!!! Как все таки вырезать искомую фразу из кавычек, но без кавычек и без пробелов в итоге?
Ну значит в тексте возле кавычек находятся еще и пробелы.
Можно попробовать так: (?<="(|\ ))\w.*?\w(?=(|\ )")
 
  • Спасибо
Реакции: proekt-gaz

proekt-gaz

Client
Регистрация
13.01.2013
Сообщения
94
Благодарностей
5
Баллы
8
Ну значит в тексте возле кавычек находятся еще и пробелы.
Можно попробовать так: (?<="(|\ ))\w.*?\w(?=(|\ )")
Респект и уважуха! Что я только не пробовал, чтобы убрать эти пробелы...
Можно еще и объяснить, подробнее, как работает эта регулярка?
 

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 450
Благодарностей
1 881
Баллы
113

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 707
Баллы
113

eliadsonet

Client
Регистрация
25.05.2012
Сообщения
122
Благодарностей
48
Баллы
28
Подскажите пожалуйста. Есть регулярка (один|два|три). Что нужно указать в Zenno в Regex чтобы регистр не имел влияния. Т.е. Чтоб Рав, дВа, ТРИ парсились?
 

evgen_po

Client
Регистрация
27.08.2013
Сообщения
848
Благодарностей
528
Баллы
93
Впереди регулярного выражения указать (?i)
Т.е. так в данном случае:
(?i)(один|два|три)
 
  • Спасибо
Реакции: eliadsonet

runlike

Client
Регистрация
22.09.2015
Сообщения
175
Благодарностей
51
Баллы
28
{-Page.Dom-} DOM текст страницы
{-Page.Source-} Исходный код страницы
{-Page.Text-} Текст страницы.
А в чем разница между ними ? В каком случае надо искать в коде, в тексте или DOMе ?

Я так понимаю Текст страницы - это все то, что видно глазу при загрузке, его можно использовать для проверки прогрузилась ли конкретная часть
Исходный код - это весь скрипт страницы. Можно использовать для гет пост запросов, чтобы выдернуть нужную инфу.
А DOM для чего ?
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 557
Благодарностей
8 727
Баллы
113
А в чем разница между ними ? В каком случае надо искать в коде, в тексте или DOMе ?

Я так понимаю Текст страницы - это все то, что видно глазу при загрузке, его можно использовать для проверки прогрузилась ли конкретная часть
Исходный код - это весь скрипт страницы. Можно использовать для гет пост запросов, чтобы выдернуть нужную инфу.
А DOM для чего ?
DOM = это Source + результат работы JS-скриптов..
проще говоря - это html-код всего что вы видите в браузере..
 
  • Спасибо
Реакции: ivan01

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)