Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.216.110.157] |
|
Сообщ.
#1
,
|
|
|
<? $mas_news=" sdl;fh skldjfh sjkfgb <img src=dr_g/drg/drg/drg/drg.gif> dghl dfklsjh dfkjlbg kldfjgh dfjk"; $mas_news=ereg_replace("(<img src=(([A-Za-z0-9.\/.\_.\-])*_))>.", "add/\\1" ,$mas_news); print $mas_news; ?> мне надо найти dr_g/drg/drg/drg/drg.gif и добавить к нему add например! Добавлено а мой код не работает так как надо в чем проблем((( |
Сообщ.
#2
,
|
|
|
Цитата VovikDRG @ Интересно, какой в это вкладывался смысл? ([A-Za-z0-9.\/.\_.\-])* |
Сообщ.
#3
,
|
|
|
SiMM, поиск от адо z _ - и так далее и может повторятся несколько раз
|
Сообщ.
#4
,
|
|
|
Зачем так сложно? Можно и без подшаблонов обойтись.
<? $mas_news=" sdl;fh skldjfh sjkfgb <img src=dr_g/drg/drg/drg/drg.gif> dghl dfklsjh dfkjlbg kldfjgh dfjk"; $mas_news=ereg_replace('src=([^>]+)', 'src=add/\\1' , $mas_news); print $mas_news; ?> |
Сообщ.
#5
,
|
|
|
Trustmaster, ПАсибо но было бы еще намного лутше))) если бы обяснили
Цитата Trustmaster @ 'src=([^>]+) вот ето Добавлено def, к сожелению я не наю какая строчка просто я работаю над порталом и там идет импорт новостей из бд вот я прописую точний адрес рисунка))) но уже все помогли мне)) Добавлено def, Trustmaster, SiMM, Пасиб за все)) |
Сообщ.
#6
,
|
|
|
Просто обажаю переводить регулярные выражения на русский язык
$mas_news=ereg_replace('src=([^>]+)', 'src=add/\\1' , $mas_news); Перевожу: ищем подстроку, содержащую сначала src=, после которой группируем в первый подшаблон (\\1) все символы, отличные от ">"; заменяем все это на src=add/ плюс подшаблон \\1. То ест, мы копируем в первый подшаблон весь тексто до закрывающей угловой скобки. Конечно, это только простейший метод. На самом деле лучше сделать с защитой от неправильного HTML и с поддержкой верхнего регистра и кавычек: <? $mas_news=" sdl;fh skldjfh sjkfgb <img src=dr_g/drg/drg/drg/drg.gif> dghl dfklsjh dfkjlbg kldfjgh dfjk"; $mas_news=eregi_replace('(<img src=)("|\')?([^>"\']+)("|\')?>', '\\1\\2add/\\3\\4>' , $mas_news); print $mas_news; ?> Но этот регэксп объяснять уже дольше |
Сообщ.
#7
,
|
|
|
Trustmaster, Еще раз пасиб)) мне и етого пока хватит)))
|
Сообщ.
#8
,
|
|
|
а можно мне //
а зачем в третем кавычки ...... они же в четвертом ???? |
Сообщ.
#9
,
|
|
|
Вот еще вариантец с поддержкой других аттрибутов:
<? $mas_news=" sdl;fh skldjfh sjkfgb <img src=dr_g/drg/drg/drg/drg.gif> dghl dfklsjh dfkjlbg kldfjgh dfjk"; $mas_news=eregi_replace('(<img[^>]* src=)("|\')?([^>"\']+)("|\')?([^>]*)>', '\\1\\2add/\\3\\4\\5>' , $mas_news); print $mas_news; ?> Цитата а можно мне // а зачем в третем кавычки ...... они же в четвертом ???? Конечно можно Но ведь в третьем-то они нам не нужны (мы их не должны копировать). |