Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Регулярные выражения в AutoIt

Ответить
Настройки темы
[решено] Регулярные выражения в AutoIt

Аватара для morgan1991

Старожил


Сообщения: 398
Благодарности: 13

Профиль | Сайт | Отправить PM | Цитировать


Заранее прошу прощения если темы уже была, поиском не нашол ничего подходящего.
Вообщем проблема в следующем, читал русскую справку (про английскую вообще молчу) и никак не могу понять написание шаблонов для
В справке не достаточно понятно как использовать такие шаблоны. + к этому у меня всегда были проблемы с рег. выражениями в других языках...

Хотелось бы чтоб ктонибудь объяснить популярно как составлять такие шаблоны.
В справке есть таблица специальных символов (Элементы шаблона), но по ней для меня очень сложно составить шаблон.
Пример такой:
Нужно из текста выковырять все ссылки такого вида:
view.php?ad=122887
view.php?ad=12285
view.php?ad=1222287
Меняется только число после =
Дак вот вродибы простое выражение, а у меня составило много трудностей.
Исходя из справки у меня получился такой шаблон:
Код: Выделить весь код
StringRegExp($Text, "(view.php?ad=)\d*", 1)
Но он в корне не правильный, а у меня даже мысли нет почему?
Поэтому прошу помощи в освоении регулярных выражениях...

-------
Хочу научиться писать драйвера на с++


Отправлено: 15:37, 15-04-2010

 

Аватара для morgan1991

Старожил


Сообщения: 398
Благодарности: 13

Профиль | Сайт | Отправить PM | Цитировать


Цитата amel27:
а как быть с кавычками?.. ведь тогда из второго блока получится: »
тогда думаю можно выковыривать только вот эту часть:
Код: Выделить весь код
<a href='http://cs945.userapi.com/u11909801/l_c9f2e05b.png'><img src='http://cs945.userapi.com/u11909801/m_ce4c5ebc.png'/></a>
Код: Выделить весь код
[[app_post1830401|a_11909801_4718705_162769015|b0c02new1090000]]
А остальное можно отбросить.

-------
Хочу научиться писать драйвера на с++


Отправлено: 19:07, 28-05-2010 | #21



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Цитата morgan1991:
думаю можно выковыривать только вот эту часть »
только первый элемент?.. тогда так:
Код: Выделить весь код
'\[(\d++),(\d++),\["([^"]*+)"(?:,"[^"]*+"|,\d+)*+\],\[(\d++),"([^"]*+)","([^"]*+)"(?:,"[^"]*+"|,\d+)*+],\[\d+(?:,"[^"]*+"|,\d+)*+\]\]'
Это сообщение посчитали полезным следующие участники:

Отправлено: 08:51, 29-05-2010 | #22


Аватара для morgan1991

Старожил


Сообщения: 398
Благодарности: 13

Профиль | Сайт | Отправить PM | Цитировать


amel27, спасибо огромное, всё отлично функционирует.

-------
Хочу научиться писать драйвера на с++


Отправлено: 14:39, 30-05-2010 | #23


Аватара для morgan1991

Старожил


Сообщения: 398
Благодарности: 13

Профиль | Сайт | Отправить PM | Цитировать


Очередной раз прошу помощи, т.к. ну никак не могу сделать сам.
Есть переменная $test, которая содержит html страницы.
Нужно найти в ней самый последний тег </div> и удалить всё что находится после него.

-------
Хочу научиться писать драйвера на с++


Отправлено: 17:04, 20-10-2010 | #24


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
StringRegExpReplace($test, '(^.*</div>).*+', '\1')
Это сообщение посчитали полезным следующие участники:

Отправлено: 03:00, 21-10-2010 | #25


Аватара для morgan1991

Старожил


Сообщения: 398
Благодарности: 13

Профиль | Сайт | Отправить PM | Цитировать


amel27, к сожалению не работает

-------
Хочу научиться писать драйвера на с++


Отправлено: 13:44, 21-10-2010 | #26


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Цитата morgan1991:
не работает »
пост #14

Отправлено: 13:57, 21-10-2010 | #27


Аватара для morgan1991

Старожил


Сообщения: 398
Благодарности: 13

Профиль | Сайт | Отправить PM | Цитировать


Вложения
Тип файла: txt Новый текстовый документ.txt
(9.6 Kb, 16 просмотров)

прикладываю пример кода.
Извиняюсь, неправильно сказал, нужно убрать всё после строки:
Код: Выделить весь код
Следуйте инструкциям. </P><INPUT value=Оплатить type=submit> </FORM></DIV></DIV></DIV>
И затем в конец дописать:
Код: Выделить весь код
</BODY></HTML>

-------
Хочу научиться писать драйвера на с++


Отправлено: 16:41, 21-10-2010 | #28


Аватара для morgan1991

Старожил


Сообщения: 398
Благодарности: 13

Профиль | Сайт | Отправить PM | Цитировать


Решил сам:

Код: Выделить весь код
$test = StringRegExpReplace($test, "Следуйте инструкциям. </P><INPUT value=Оплатить type=submit> </FORM></DIV></DIV></DIV>(?s)(.*)", "Следуйте инструкциям. </P><INPUT value=Оплатить type=submit> </FORM></DIV></DIV></DIV>" & @CRLF & "</BODY></HTML>")

-------
Хочу научиться писать драйвера на с++


Отправлено: 22:39, 21-10-2010 | #29


Аватара для gregaz

Пользователь


Сообщения: 88
Благодарности: 19

Профиль | Отправить PM | Цитировать


Цитата morgan1991:
Решил сам: »
Можно упростить выражение :

Код: Выделить весь код
$test = StringRegExpReplace($test, "(?s)(.+Следуйте инструкциям.+</DIV></DIV></DIV>).+", "\1"& @CRLF & "</BODY></HTML>")

Последний раз редактировалось gregaz, 22-10-2010 в 15:25.


Отправлено: 07:34, 22-10-2010 | #30



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Регулярные выражения в AutoIt

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
регулярные выражения Ginger Вебмастеру 60 21-03-2012 01:11
Java - Регулярные выражения Java ValVlaGen Программирование и базы данных 0 19-10-2009 08:06
Разное - PHP - регулярные выражения: HELP GoldenOrb Программирование и базы данных 10 08-09-2008 16:47
PHP - регулярные выражения: HELP GoldenOrb Вебмастеру 13 18-07-2008 16:05
Регулярные выражения est Хочу все знать 6 02-10-2002 14:17




 
Переход