preg_match_all проблема

gelous

Новичок
preg_match_all проблема

Здравствуйте! Я никак не могу разобраться с этой функцией перечитывал мануал раз 10 с примерами... у меня задача - есть файл, в 10 мегов, и в нем попадаются ссылки, вроде <a href=/bb/12345/>. Мне нужно повыдирать все числа. Пробую так
PHP:
preg_match_all('/bb\/(0-9)+\//',$fp,$match);
      
for($i=0;$i<=10;$i++) {
echo $match[$i].'<br>';
};
echo "<br><br>Done...<br>";
не получается =( подскажите, пожалуйста!
 

gelous

Новичок
читал =(

посимвольно:
' - это обозначает строку =)
/ - начало и конец выражения
bb - текст с которого нужно начинать искать
\/ - заэкранированный /
(0-9)+ искать цифры, цифр сколько угодно
\/ - так заканчивается урл
/-конец регулярного выражения

по регуляркам тоже читал статьи, в моем представлении выражение должно быть таким =( в правильном - видимо нет =(
 

gelous

Новичок
PHP:
preg_match_all('/bb\/([0-9])+\//',$fp,$match);
тоже возвращает Array () в количестве 2 =(

а

PHP:
preg_match_all('/bb\/[0-9]+\//',$fp,$match);
второй варинат работает! я просто не правильно выводил! спасибо!
 

Dovg

Продвинутый новичок
gelous
если тебе нужны именно цифры, то лучше замени на
preg_match_all('/bb\/([0-9]+)\//',$fp,$match);
print_r($match);
 

gelous

Новичок
Большое спасибо :D

-~{}~ 23.08.07 20:00:

кстати лебедев смайлик убрал =(
 

kruglov

Новичок
gelous
кто лебедев? где убрал?

кстати, [0-9] это и \d

-~{}~ 23.08.07 20:04:

и еще можно писать, например,
~bb/\d+/~ или @bb/\d/@
 

gelous

Новичок
ну да, это я понимаю =)

##########.##

я так к нему привязался... жирный линк давал нашару =) я им сайты индексировал за пару часов :D

-~{}~ 23.08.07 20:18:

хмм.. как посчитать сколько в массиве получилось вхождений? понял, sizeof() верно? нет не подошло ( да посчитать количество элементов
 

kruglov

Новичок
в смысле сколько в массиве элементов?

p.s. реклама на этом форуме платная
 

gelous

Новичок
я не рекламировал! даже ссылку не поставил =( сейчас уберу
 
Сверху