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

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

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

 

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

вид форума:
Линейный форум Структурный форум

тема: выделить цифры, и цифры с буквами одновременно
 
 автор: Vertex   (29.05.2008 в 20:59)   письмо автору
 
 

ЗДРАВСТВУЙТЕ ))))

есть строки:
Договор №50
Договор №500
Распоряжение №600-р
Постановление №70-пп


подскажите какую регулярку нужно смастырить, чтобы она выделяла номер жирным текстом?
смастрячил вот такую
 $pattern = "|(№(\d+).[\D+])|sxi";
  $replacement = "<b>\${1}</b>";
  $string = $y['docs'];
  $d= preg_replace($pattern, $replacement, $string);
,
но она работает немного не так как надо: захватывает следующее слово, если после номера нет индекса (пп, р и т.д.). Помогите плиз!=)

   
 
 автор: xx77   (29.05.2008 в 23:32)   письмо автору
 
   для: Vertex   (29.05.2008 в 20:59)
 

можно попробовать так:
$y['docs']='Договор №50
Договор №500
Распоряжение №600-р
Постановление №70-пп';

$pattern = "|(№\d+\S*)|s"; 
  $replacement = "<b>\${1}</b>"; 
  $string = $y['docs']; 
 echo $d= preg_replace($pattern, $replacement, $string);

   
 
 автор: Vertex   (29.05.2008 в 23:47)   письмо автору
 
   для: xx77   (29.05.2008 в 23:32)
 

да! спасибо большое! это то, что нужно.
Преобразовав его к виду "|(№\s?\d+\S*)|s", я получил то, что нужно. (иногда пользователи системы ставят пробел между № и числом, тогда он не отображался, а щас всё классно)

   
Rambler's Top100
вверх

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