![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Регулярные выражения [D7, WinXP]
Fantasy © (2010-05-18 18:11:00)Почему выражение
[^=].+[^;]
с источьника
=1;
не выносит ответ
1
????????
Медвежонок Пятачок (2010-05-18 18:55:00) [1]ты сказал:
любой набор символов букв и цифр
равно, двоеточие и прочее это не цифра и не буква. Медвежонок Пятачок © вот от гугла
=(.+);
но иногда будет срабатывать неверно из за жадности и .+ захватывая лишнее в случае нескольких что-то=чемуто; подряд Fantasy Вот сижу голову ломаю
Все равно спасибо Медвежонок ПятачокПИВО С МЕНЯ :o) Fantasy Все нашел.
re.expression := '(.+?)\=(.+)\;'
if re.execute then
ShowMessage(re.Match[1])
ShowMessage(re.Match[2])
Благодарю всех за участие.
Fantasy (2010-05-18 18:52:00) [2]более подробно
это cookie
вот от гугла PREF=ID=15ee646b63c33e6c:TM=1274194258:LM=1274194258:S=H8dkcxU5Dczxj175;
PREF
ID=15ee646b63c33e6c:TM=1274194258:LM=1274194258:S=H8dkcxU5Dczxj175;
вот от чата
phpbb3_4ijme_u=1;
phpbb3_4ijme_u
1
Fantasy (2010-05-18 18:49:00) [3]Медвежонок Пятачок
любой набор символов букв и цифр
Медвежонок Пятачок (2010-05-18 18:49:00) [4][9] - чем не подходит?
Медвежонок Пятачок (2010-05-18 18:49:00) [5]любой набор символов букв и цифр
\w вместо \d
Fantasy (2010-05-18 18:46:00) [6]Как вытащить все что между = ;с условием если они есть >
помогите
Медвежонок Пятачок (2010-05-18 18:42:00) [7]re.expression := '=\s*(\d+)\s*;'
if re.execute then
ShowMessage(re.Match[1])
Fantasy (2010-05-18 18:38:00) [8]Медвежонок Пятачок ©
я понял
спасибо
Медвежонок Пятачок (2010-05-18 18:36:00) [9]ноль
даже с переменой
=11;
потому что твое выражение ждет как минимум три символа.
причем первый не должен быть равен "="
а последний не должен быть равен ";"
Медвежонок Пятачок (2010-05-18 18:34:00) [10]мне по барабану твой тестер.
я тебе сказал что означает твое регулярное выражение.
Fantasy (2010-05-18 18:32:00) [11]Что не так?
И как правильно?
Fantasy (2010-05-18 18:31:00) [12]вот тестер http://realcode.ru/regexptester/
выражение
[^=].+[^;]
с переменной
=111;вынесет 111
а вот с переменной
=1;ноль
даже с переменой
=11;
мне нужно вынести все что поле знака =до знака ;
как поменять ?
Медвежонок Пятачок (2010-05-18 18:20:00) [13][^=].+[^;]
Такое выражение вернет True для строки в которой есть последовательность:
один символ, не равный '=', затем любые символы в количестве не меньшем один, за ними один символ не равный ';'
а твой "источьник" не бъет с этим выражением
Медвежонок Пятачок (2010-05-18 18:16:00) [14]не выносит ответ
1
Оно должно "выносить" ответ ДА/НЕТ
Медвежонок Пятачок (2010-05-18 18:14:00) [15]Потому что домик в скобках означает не то что означает тот же домик без скобок