![]() |
обработать текст на Php
Как бы мне в коротеньком тексте все выражения типа " [IMG:10]" ( цифра само сабой меняется)
заменить на "<img src="picture?pid=10>" тоесть цыфра чтобы сооответствовала ... ну или хотябы какие функции лучше использовать? |
Код:
$str = preg_replace("/\[IMG\:(\d+)\]/","<img src=\"picture?pid=\\1\">",$str);Смайл вставился вместо ":" и "(". Убогий форум. |
спасибо!! а не знаешь ресурс хороший где про регулярные вражения стоит?
|
|
эх любишь ты английский... ну ничего пролезно вспомнить...:)) ставлю 5!
|
Ну не с твоей орфографией о любви к русскому рассказывать.
|
послушай а как узнать? стоит ли [IMG:2] в саммом начале строки и если да получить число (в даном случае 2) ?
Добавлено через 4 минуты: а я о ней и не рассказываю, но английскую ещё меньше люблю.. да вобще ни какую не люблю.. а по русски уже с 15 лет не пишу так как живу не в России |
shuron
preg_match("/\[IMG\:(\d+)\]/",$str, $aMatches); echo $aMatches[1]; |
preg_match("/\[IMG\:(\d+)\]/",$str,$ok); echo $ok[1];
PS: На этом форуме немало тех, кто не живет в России, однако это не мешает им писать без ошибок. |
тебя раздражает моя граматика? Добавлено через 3 минуты: да но разве это проверит стоит ли [IMG] в самом начале строки? |
Нет, не проверит. Но ты так задал вопрос, что получил на него сразу два неправильных ответа ;)
preg_match("/^\[IMG\:(\d+)\]/",$str,$ok); echo $ok[1]; |
мне надо знать это число только если выражение стоит первым в тексте...
Добавлено через 3 минуты: угу спасибо Добавлено через 14 минут: Как мне узнать встречается ли во всём тексте хоть один раз выражение "[IMG:3]" (3 опять любое число)? это будет так? preg_match("/\[IMG\:(\d+)\]/",$text,$ok); if(isset($ok[1])) echo "yes!"; ? |
if (preg_match(...))
|
странно в описании не стоит что он true или false выдает, или я криво смотрел...
|
shuron
preg_match() returns the number of times pattern matches. That will be either 0 times (no match) or 1 time because preg_match() will stop searching after the first match. preg_match_all() on the contrary will continue until it reaches the end of subject. preg_match() returns FALSE if an error occured. |
теперь вижу..:))
|
мдя) подскажите-ка регу плиз)
|
Код:
echo preg_replace('/\[img:(\d+)\]/i', '<img src="picture.php?id=\\1">', "[IMG:10]"); |
Это к чему?
|
Мдяя я тормоз зато время что написал тут такой треп уже развернулся...
|
| Часовой пояс GMT +4, время: 18:41. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.