Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Вырезать или заменить из текста все, что начинается с $ и длиной в три символа

Сообщения:  [1-10]   [11-14] 

 
 автор: Fractured#   (17.12.2009 в 00:28)   письмо автору
 
   для: hopupu   (17.12.2009 в 00:20)
 

Ты можешь составить чёткие правила, что на используемом тобой ресурсе, называется кодом цвета? Или эти буковки вбивают пользователи (на том ресурсе), правила которым не писаны? За этой проблемой могут последовать другие. Они могут пробел поставить, они могут вместо знака доллара написать знак евро. Что тогда?

  Ответить  
 
 автор: hopupu   (17.12.2009 в 00:20)   письмо автору
 
   для: Fractured#   (17.12.2009 в 00:18)
 

это именно цвет.. и там только или русское "o" или латинское…

  Ответить  
 
 автор: Fractured#   (17.12.2009 в 00:18)   письмо автору
 
   для: hopupu   (17.12.2009 в 00:10)
 

А если это не цвет вовсе? А если там ещё будет кириллические "А", "В, "С"?

  Ответить  
 
 автор: hopupu   (17.12.2009 в 00:10)   письмо автору
 
   для: Fractured#   (17.12.2009 в 00:00)
 

она может стоять на любом месте или на всех сразу…

эти данные я получаю не от своих пользователей, а с другого сайта в xml формате… так что мне остается только обрабатывать.. предотвратить это никак не получится..

  Ответить  
 
 автор: Fractured#   (17.12.2009 в 00:00)   письмо автору
 
   для: hopupu   (16.12.2009 в 23:42)
 

Очень интересно как она там оказалась.

  Ответить  
 
 автор: hopupu   (16.12.2009 в 23:42)   письмо автору
 
   для: hopupu   (12.12.2009 в 00:22)
 

Разрешите еще вопрос… Проблема в том, что иногда я получаю цвета в формате $xxx где вместо цифры "0" стоит буква "o" .. как это исправить?

Спасибо!

  Ответить  
 
 автор: hopupu   (12.12.2009 в 00:22)   письмо автору
 
   для: big-trot   (12.12.2009 в 00:06)
 

Ууф!

Спасибо! все работает!!!!! !

p.s. поиск в словах..

  Ответить  
 
 автор: big-trot   (12.12.2009 в 00:06)   письмо автору
 
   для: big-trot   (12.12.2009 в 00:02)
 

Поразительно совпадение

  Ответить  
 
 автор: big-trot   (12.12.2009 в 00:02)   письмо автору
 
   для: hopupu   (11.12.2009 в 23:06)
 

Для именно такой строки предлагается следующий монстр


$str=preg_replace('|(?:\$([\da-f])([\da-f])([\da-f]))+|i','</font><font color="#\\1\\1\\2\\2\\3\\3">','S$0ffOFT$55cT$99cIME');
$str=preg_replace('|<\/font>|','',$str,1);
$str.='</font>';


Если вы хотите находить такие строки в тексте, то задача несколько усложняется.
Во-первых желательно знать формат контекста поиска (html страница, обычный тескт и т.д.),
т.к. универсального решения я подозреваю нет, или будет очень сложно

  Ответить  
 
 автор: Fractured#   (11.12.2009 в 23:56)   письмо автору
 
   для: hopupu   (11.12.2009 в 23:06)
 

<?php

$s 
'S$00fOFT$55cT$99cIME';

if( 
preg_match('/\\$[a-f\\d]{3}/'$s) )
{
    
$s preg_replace('/\\$([a-f\\d])([a-f\\d])([a-f\\d])/''</font><font color="#\\1\\1\\2\\2\\3\\3">'$s);    
    
$s '<font>' $s '</font>';
}

echo 
$s;
?>

  Ответить  

Сообщения:  [1-10]   [11-14] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования