Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: отрицание слов

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
dadli
Отправлено: 27 Декабря, 2011 - 18:40:44
Post Id



Посетитель


Покинул форум
Сообщений всего: 416
Дата рег-ции: Май 2011  
Откуда: тифилис


Помог: 5 раз(а)




приветствую.
например есть строка
$str = 'круто в пхп 5 програмировать';

вот если напишим так:

ето анзачает что ми заменим всо кроме символ т, к пустату, резултат такои: тт ето понятно.
а как написат отрицание вся слов? или несколко слов? тоест как написать такое:
"заменит всю к пустату кроме пхп 5"
ето виведит пхп5 п, и понятно почему. но хелателни резултат такои: пхп 5
как такое сделать?

(Отредактировано автором: 27 Декабря, 2011 - 18:42:25)

 
 Top
Champion Супермодератор
Отправлено: 27 Декабря, 2011 - 18:43:29
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




dadli пишет:
"#[^пхп 5]#u"

'/(?:(?!text to be not replaced).)*?/'
 
 Top
dadli
Отправлено: 27 Декабря, 2011 - 18:57:20
Post Id



Посетитель


Покинул форум
Сообщений всего: 416
Дата рег-ции: Май 2011  
Откуда: тифилис


Помог: 5 раз(а)




Champion

значит так ?
PHP:
скопировать код в буфер обмена
  1. $str = 'круто в пхп5 програмировать';
  2. echo preg_replace('/(?:(?!пхп5).)*?/u','',$str);

если да, виведит один такои символ �
(кодировка пхп фаила utf-8)
(Добавление)


кожется я очен криво написал перви пост, может бить сеичас понимаите
в шаблоне ето [^т] азначает "все кроме символ т"
а как написать все кроме какоита слов полностю? то есть как написать "все кроме ямайка" ?

(Отредактировано автором: 27 Декабря, 2011 - 19:33:08)

 
 Top
DeepVarvar Супермодератор
Отправлено: 27 Декабря, 2011 - 19:35:42
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




PHP:
скопировать код в буфер обмена
  1. echo preg_replace("#.*(пхп 5).*#u",'$1','круто в пхп 5 програмировать');


Champion, интересно, почему твой вариант не работает?
А еще волнует вопрос - почему отрицание действует на класс, но не действует на подмаску?
 
 Top
Champion Супермодератор
Отправлено: 27 Декабря, 2011 - 19:35:48
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




А блин. Да, логично.
preg_replace('[^п][^х][^п][^5]/u','',$str);
Тогда такая штука например
(Добавление)
или
preg_match_all('/(пхп5)/', $str, $m[1]);
$res = join('', $m);
 
 Top
DeepVarvar Супермодератор
Отправлено: 27 Декабря, 2011 - 19:39:19
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




Хы - а мой вариант лучше Радость
 
 Top
dadli
Отправлено: 27 Декабря, 2011 - 20:06:50
Post Id



Посетитель


Покинул форум
Сообщений всего: 416
Дата рег-ции: Май 2011  
Откуда: тифилис


Помог: 5 раз(а)




DeepVarvar


Champion
Цитата:
или
preg_match_all('/(пхп5)/', $str, $m[1]);
$res = join('', $m);

конечно так резултат получаем, но интересно било именно ето: так скажем: "отрицание вся слов" не возможно?

Champion
Цитата:
preg_replace('[^п][^х][^п][^5]/u','',$str);
Тогда такая штука например


PHP:
скопировать код в буфер обмена
  1. $str = 'круто в пхп5 програмировать';
  2. echo preg_replace('#[^п][^х][^п][^5]#u','',$str);

а так, вот что получаем: ппь не понятно почему? вообшем неожидаеми резултат Не понял
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Регулярные выражения »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB