|
|
|
| Рябят,а как sscanf запустить в цикле? То есть когда в исходной строке есть несколько подстрок соответствующих формату | |
|
|
|
|
|
|
|
для: malish
(15.03.2006 в 10:39)
| | sscanf() - это не preg_match() . Это у preg_match может быть в исходной строке несколько подстрок, соответствующих регулярному выражению.
У sscanf - не регулярное выражение, а формат. А формат это такая штука, которая сопоставляется с началом исходного потока символов. И сопоставляется, понятное дело, только один раз. Поскольку sscanf не возвращает информации о том, какая часть строки осталась неотсканированной. | |
|
|
|
|
|
|
|
для: Trianon
(15.03.2006 в 10:51)
| | Лучше спрошу: мне нужно из строки вытащить такое выражение: [link]www.rambler.ru[/link] и присвоить переменной $url выражение между [link] и [/link] ( как при добавлении ссылки в новой теме на этом форуме. ) | |
|
|
|
|
|
|
|
для: malish
(15.03.2006 в 11:41)
| | Можно поступить следующим образом
<?php
$str = "Лучше спрошу: мне нужно из строки вытащить такое выражение: [link]www.rambler.ru[/link] и присвоить переменной $url выражение между [link] и [/link] ( как при добавлении ссылки в новой теме на этом форуме. )";
$pattern = "|\[link\]([^\[]+)\[/link\]|i";
$str = preg_match_all($pattern, $str, $out);
echo "<pre>";
print_r($out[1]);
echo "</pre>";
?>
|
| |
|
|
|
|
|
|
|
для: malish
(15.03.2006 в 11:41)
| | Вопрос снят.Спасибо | |
|
|
|