Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: За что отвечает [, array &regs] фунцкии eregi()?
 
 автор: Mastodont   (26.03.2007 в 14:37)   письмо автору
 
 

Знаю, что первый параметр функции eregi ( string pattern, string string [, array &regs] ) отвечает за строку поиска, второй - за строку замены, а вот для чего нужен третий, мне нигде найти не удалось.

   
 
 автор: mihdan   (26.03.2007 в 14:40)   письмо автору
 
   для: Mastodont   (26.03.2007 в 14:37)
 

сохранит в массив все что обработал
0- исходник
1- первое совпадение
...........................
н- - ое совпадение с шаблоном


<?php
if (ereg ("([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})"$date$regs)) {
    echo 
"$regs[3].$regs[2].$regs[1]";
} else {
    echo 
"Invalid date format: $date";
}
?>

   
 
 автор: mihdan   (26.03.2007 в 14:50)   письмо автору
 
   для: Mastodont   (26.03.2007 в 14:37)
 

Или вот еще такой пример


<? 
$str 
'miha@miha.ru';
if (
ereg('([a-z]+)@([a-z\.]+)',$str,$arr)){echo 'da';}
echo 
'<pre>';
print_r($arr);
?>

   
 
 автор: Mastodont   (26.03.2007 в 20:15)   письмо автору
 
   для: mihdan   (26.03.2007 в 14:50)
 

Вот все хочу спросить, а че такое ([0-9]{4})-([0-9]{1,2})-([0-9]{1,2}) и ([a-z]+)@([a-z\.]+)? Как эти строчки расшифровываются?

   
 
 автор: mihdan   (27.03.2007 в 10:37)   письмо автору
 
   для: Mastodont   (26.03.2007 в 20:15)
 

Это регулярные выражения:
1 если число записано так 2007-27-03, то вернет true иначе false
2 если мыло вида name@domain.com, то вернет true иначе false

А вообще просто прочти какую-нить книженцию по RegEXP (по регулярным выражениям)

   
 
 автор: Mastodont   (29.03.2007 в 14:34)   письмо автору
 
   для: mihdan   (27.03.2007 в 10:37)
 

Я тут почитал про регулярные кой че, но так и не понял, че может означать строчка


^([0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-wyz][a-z](fo|g|l|m|mes|o|op|pa|ro|seum|t|u|v|z)?)$


Сначала ищутся числа от 0 до 9, потом буквы от a до z, потом символы -, _ и . (хотя точку вроде надо указывать как \.), потом один любой символ, снова от 0 до 9 и от a до z, потом много любых симоволов, собака, опять от 0 до 9 и от a до z. А вот потом какой-то бред начинается - в одни круглые скобки вкладываются еще одни круглые скобки.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования