|
|
|
| Здравствуйте.
Как в этом коде перед адресом изображения поставить две точки
$newField_3 = preg_replace('#(<img\s[^>]*?\bsrc\s*=\s*[\'"]?)/lessons/#i', '$1/images/lessons/', $catagory['Field 3']); // Замена адреса изображения в строке
// <img height="547" src="/lessons/les1677/1.jpg" width="450" /> менняется на
// <img height="547" src="/images/lessons/les1677/1.jpg" width="450" />
|
Нужно чтобы замена шла на <img height="547" src="../images/lessons/les1677/1.jpg" width="450" />
пробовал '$1.".."./images/lessons/' точки не поставились? | |
|
|
|
|
|
|
|
для: pautina
(19.02.2012 в 15:09)
| |
<?
$a = "<img height=\"547\" src=\"/lessons/les1677/1.jpg\" width=\"450\" />";
echo preg_replace("/(<img.+)src=\"(.+)\"(.+\/?>)/is","$1src=\"../images$2\"$3",$a);
?>
|
| |
|
|
|
|
|
|
|
для: ladan
(19.02.2012 в 22:32)
| | изменил ваш участок под свой скрипт
$newField_3 = preg_replace("/(<img.+)src=\"(.+)\"(.+\/?>)/is","$1src=\"../images$2\"$3", $catagory['Field 3']);
|
точки перед image после замены не ставятся
в содержимом ячейки html код содержит рисунки типа
<IMG height=319 src="/lessons/les1689/04.jpg" width=450>
|
эти рисунки нужно менять на
<IMG height=319 src="..images/lessons/les1689/04.jpg" width=450>
|
Как подредактировать код чтобы шла замена? | |
|
|
|
|
|
|
|
для: pautina
(20.02.2012 в 06:19)
| |
<?
$catagory['Field 3'] = "<IMG height=319 src=\"/lessons/les1689/04.jpg\" width=450>";
echo preg_replace("/(<img.+)src=\"(.+)\"(.+\/?>)/is","$1src=\"..images$2\"$3",$catagory['Field 3']); //<IMG height=319 src="..images/lessons/les1689/04.jpg" width=450>
?>
у меня все работает!
|
| |
|
|
|
|
|
|
|
для: ladan
(20.02.2012 в 10:59)
| | участок кода рабочий, но уменя исходные адреса рисунков не
<IMG height=319 src=\"/lessons/les1689/04.jpg\" width=450>
|
а
<IMG height=319 src="/lessons/les1689/04.jpg" width=450>
|
без этого обратного слеша,
как изменить код
<?php
$catagory['Field 3'] = "<IMG height=319 src=\"/lessons/les1689/04.jpg\" width=450>";
echo preg_replace("/(<img.+)src=\"(.+)\"(.+\/?>)/is","$1src=\"..images$2\"$3",$catagory['Field 3']); //<IMG height=319 src="..images/lessons/les1689/04.jpg" width=450>
?>
|
| |
|
|
|
|
|
|
|
для: pautina
(20.02.2012 в 11:36)
| |
<?
Занес в базу эту картинку <IMG height=319 src="/lessons/les1689/04.jpg" width=450>
и вывел, обратов через регулярку, получил:
<IMG height=319 src="..images/lessons/les1689/04.jpg" width=450>
?>
|
Не обращайте внимание на эти слеши, это для примера я их ставил, т.к нужно экранировать двойные кавычки, когда в переменную заносишь | |
|
|
|
|
|
|
|
для: ladan
(20.02.2012 в 11:51)
| | как правильно записать замену для участка кода, а не одного рисунка
<?php
$catagory['Field 3'] = '<P align=center><IMG height=308 src="/lessons/les1689/16.jpg" width=450></P>
<P>Деформируем этот слой с помощью <STRONG>Warp</STRONG> (Деформация) по форме окружности:</P>
<P align=center><IMG height=397 src="/lessons/les1689/17.jpg" width=450></P>
<P>Как вы видите, теперь мы имеем световое пятно:</P>
<P align=center><IMG height=259 src="/lessons/les1689/18.jpg" width=450></P>
<P>Дублируем (CTRL+J) этот слой несколько раз, чтобы усилить эффект:</P>
<P align=center><IMG height=295 src="/lessons/les1689/19.jpg" width=450></P>';
echo preg_replace("/(<img.+)src=\"(.+)\"(.+\/?>)/is","$1src=\"..images$2\"$3",$catagory['Field 3']); //<IMG height=319 src="..images/lessons/les1689/04.jpg" width=450>
?>
|
по коду меняется адрес только последнего рисунка, а нужна замена для всех. | |
|
|
|
|
|
|
|
для: pautina
(20.02.2012 в 12:07)
| | Спасибо Вам за поддержку
нужно было использовать эту замену
$newField_3 = preg_replace('#(<img\s[^>]*?\bsrc\s*=\s*[\'"]?)/lessons/#i','$1../images/lessons/',$catagory['Field 3']);
|
| |
|
|
|
|
|
|
|
для: pautina
(20.02.2012 в 12:07)
| | убирается s в регулярке и будет как вам нужно
"/(<img.+)src=\"(.+)\"(.+\/?>)/i"
|
| |
|
|
|