Регулярные выражения

rooot

Новичок
Регулярные выражения

$pattern = "/^<br>\d++.\d++.\d++++\s+\d++:\d++/";
Правильно ли я записал?
'^<br>'-----начало стоки включая символ <br>
'\d++.'------2-е любых десятичных цифры с точкой в конце
'\d++.'------2-е любых десятичных цифры с точкой в конце
'\d++++'---4-е любых десятичных цифры
'\s+'---------минимум один пробел
'\d++:'------2-е любых десятичных цифры с двоиточием в конце
'\d++'-------2-е любых десятичных цифры
найдет ли такую запись?
<br>21.01.2005 12:21
 

SiMM

Новичок
Возьми да попробуй.
А вообще - в ман
[m]reference.pcre.pattern.syntax#regexp.reference.repetition[/m]
 

rooot

Новичок
млин не могу понять в чем дело исправил
$patterns[0] = "/[^<br>][\d++.][\d++.][\d++++]\s+[\d++:][\d++]/";
тоже ничего не дало
 

rooot

Новичок
sakon
Да, вот после 5 прочтения "/([^<br>\d.\d.\d]+)\s+([^\d:\d]+)/",
случилось такое страшное с текстом тчо даже описать невозможно ((....
 

Мутник

Новичок
а знаешь, что можно такое юзать тоже: {1,2} например... и там написано зачем ...
 

sakon

П..и.н..ок
rooot
Начало положено. Теперь прочитай про круглые и квадратные скобки, и после этого поправь...
 

rooot

Новичок
/(^<br>\d.\d.\d+\s+\d:\d+)/
и все равно не то, либо я опять не догоняю ((

-~{}~ 21.06.05 16:34:

/(^<br>\d.\d.\d+)\s+(\d:\d+)/
тоже ничего не дало (
 

rooot

Новичок
/^<br>\d\d\.\d\d\.\d\d\d\d\s\d\d:\d\d/
возможно как то точки нужно по другому выделять? я как понял это спец символ..
 

lucas

Guest
Значит, нужно составлять "на пальцах", по кускам:

0. 4 символа "<br>"
1. Две цифры
2. Точка
3. Две цифры
4. Точка
5. Четыре цифры
6. Пробел
7. Две цифры
8. Двоеточие
9. Две цифры

Каждый кусок по отдельности осилишь? :)
 

rooot

Новичок
1. Две цифры -- \d\d or \d{2}
2. Точка ---- \.
3. Две цифры -- \d\d or \d{2}
4. Точка --- \.
5. Четыре цифры \d\d\d\d or \d{4}
6. Пробел \s
7. Две цифры \d\d or \d{2}
8. Двоеточие :
9. Две цифры \d\d or \d{2}
вот

-~{}~ 22.06.05 09:55:

0. 4 символа "<br>" -- (<br>{4})
 

lucas

Guest
6. Пробел --- " ". То есть просто пробел, а не " ", \t, \r и иже с ними.

-~{}~ 22.06.05 12:00:

Блин, символ -- это "<", или "b", или "r"...

Поэтому: 0. <br> (а ты написал в сущности <br>>>>).
 

rooot

Новичок
lucas
http://detail.phpclub.ru/article/regexp_1
Пример к главе

У администратора есть список пользователей, которые генерирует программа, либо утилита, генерирует она этот список в формате:
\s+ - минимум один пробел между фамилией и именем

-~{}~ 22.06.05 10:03:

http://detail.phpclub.ru/article/regexp_2
Пример №1
Часто возникает проблема по парсингу интересующих программиста данных из HTML, который не всегда хорошего качества, все было бы терпимо, если бы еще не вставки на javascript'е, вот пример такого текста:
Теперь опишем, что не должно стоять перед ценой: (?<!<TD>) перед ценой не должен стоять тег <TD>,
т.е. в моем случае (^<td>) , хм либо (^<<td>)

-~{}~ 22.06.05 10:05:

ппц. запутался я ((

-~{}~ 22.06.05 10:13:

/\d\d\.\d\d\.\d\d\d\d\s+\d\d:\d\d/ -получил удаляет все записи типа
12.13.2005 23:14 пока только с <br> не определенность ((
 
Сверху