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

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

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

 

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

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

тема: цифры в тексте сделать ссылками
 
 автор: simplyv   (29.04.2011 в 20:32)   письмо автору
 
 

Как можно цифры в тексте сделать ссылками?
Напр. текст такого типа
 07896 08798 они, как пыль в вихре 01534, как солома 07179 перед 03942 

Надо чтобы на цифры можно было нажать и там уже будет справочная информация.

  Ответить  
 
 автор: cheops   (29.04.2011 в 21:37)   письмо автору
 
   для: simplyv   (29.04.2011 в 20:32)
 

1) А ссылка какого вида должна быть?
2) Цифры всегда 5-значные?

  Ответить  
 
 автор: simplyv   (29.04.2011 в 22:01)   письмо автору
 
   для: cheops   (29.04.2011 в 21:37)
 

да вроде вседа 5 значные.
ссылка пока не решил, исходя из того, как можно реализовать, ну может <a href="go.php?a=08752">08752</a>

  Ответить  
 
 автор: cheops   (29.04.2011 в 22:20)   письмо автору
 
   для: simplyv   (29.04.2011 в 22:01)
 

Можно воспользоваться следующим скриптом
<?php
  $text 
"07896 08798 они, как пыль в вихре 01534, как солома 07179 перед 03942";
  
$pattern "|([\d]{5})|";
  
$text preg_replace($pattern"<a href='go.php?a=\\1'>\\1</a>"$text);
  echo 
$text;
?>

  Ответить  
 
 автор: simplyv   (29.04.2011 в 22:49)   письмо автору
 
   для: cheops   (29.04.2011 в 22:20)
 

Спасибо.
Все прикрутил, все работает. Много времени с'экономил, здорово.
Спасибо.

  Ответить  
 
 автор: simplyv   (29.04.2011 в 23:35)   письмо автору
 
   для: simplyv   (29.04.2011 в 22:49)
 

Хотя нет, там по 5 и по 4 цифры. Это как то можно решить?

  Ответить  
 
 автор: cheops   (30.04.2011 в 00:04)   письмо автору
 
   для: simplyv   (29.04.2011 в 23:35)
 

Исправьте регулярное выражение следующим образом
<?php
  
...
  
$pattern "|([\d]{4,5})|";
  ...
?>

  Ответить  
 
 автор: simplyv   (30.04.2011 в 00:06)   письмо автору
 
   для: cheops   (30.04.2011 в 00:04)
 

Исправил, все работает корректно.
Спасибо большое, сильно выручили.

  Ответить  
Rambler's Top100
вверх

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