Модераторы: Aliance, skyboy, MoLeX, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> preg_replace: Как исключить из поиска строку? 
:(
    Опции темы
444ert666
Дата 22.10.2007, 11:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 34
Регистрация: 9.5.2006

Репутация: нет
Всего: нет



То есть допустим есть у нас строка: 
dasdasd adasd {123} TEXT1 {/123} dasdasd adasdas adasdas asdas {123} TEXT2 {/123} dsad ads adas 

так вот надо исключить из текста все что находится между {123} и {/123} 

делал так:
 
Код


 preg_replace("/({123})(.*)({/123})/","",$str);




естественно у меня удаляется вся строка: 
{123} TEXT1 {/123} dasdasd adasdas adasdas asdas {123} TEXT2 {/123} 
а надо чтобы только {123} TEXT1 {/123} и {123} TEXT2 {/123} 

Понятно вместо (.*) ,мне нужно вставить: "все что угодно кроме {/123}"... но как это сделать я увы не знаю :( . Один символ исключить то легко... но как исключить из поиска строку?
PM MAIL   Вверх
SelenIT
Дата 22.10.2007, 12:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 8
Всего: 401



444ert666, Вам нужно средство от  "жадности". В данном случае помогут варианты "/({123})(.*?)({/123})/" и "/({123})(.*)({/123})/U".


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
444ert666
Дата 22.10.2007, 15:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 34
Регистрация: 9.5.2006

Репутация: нет
Всего: нет



действительно  помогает smile))) 
Пасибо огромное smile)))
PM MAIL   Вверх
flashaa
Дата 22.10.2007, 15:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 796
Регистрация: 7.3.2006

Репутация: 2
Всего: 25



Цитата

Однако, если сразу же после квантификатора идет вопросительный знак, он перестает быть жадным и соответствует минимально допустимому количеству раз.

Т. о. нежадный оператор захватывает все подходящие символы ДО символов, подходящих под следующий фрагмент шаблона?
PM MAIL   Вверх
444ert666
Дата 22.10.2007, 17:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 34
Регистрация: 9.5.2006

Репутация: нет
Всего: нет



народ помогите хоть кто-нить упыхался уже :((((((.... че за жмень такая?:

есть функция:

Код

function getLL($str,$site)
{
$str=removeScripts($str);
preg_match_all("/<[aA] (.[\s]*)?href=([\"|']*)(http:\/\/)(www\.)?".$site."(.*?)<\/[aA]>/i",$str,$ar);
return $ar[0];
}


в чем прикол, создаю файл test.php пишу туда эту функцию и вызываю её...все отрабатывает на ура....
Тады беру эту функцию, выделяю, нажимаю ctrl+c открываю свой мега проект вставляю туда нажава ctrl+v.
запускаю свой проект пишет:

Warning: preg_match_all(): Unknown modifier '/' in /soft/server/www/linkan/function_check.php on line 111


И че этой падле надо?... у мя сщас голова лопнит. функция одна и таже, а вразных файлах ведет себя по-разному :(((((((((
PM MAIL   Вверх
SelenIT
Дата 22.10.2007, 22:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 8
Всего: 401



444ert666, скорее всего, в самой строке $site затесался слеш. См. preg_quote.


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
444ert666
Дата 23.10.2007, 09:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 34
Регистрация: 9.5.2006

Репутация: нет
Всего: нет



блин действительно smile)))))))))))))0
пасиб smile))))))))))
еще раз выручили smile)))
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Тексты | Следующая тема »


 




[ Время генерации скрипта: 0.0683 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.