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

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

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

 

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

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

тема: Поиск названий в тексте
 
 автор: Andrew4fr   (08.06.2010 в 17:06)   письмо автору
 
 

Здравствуйте, господа!
У меня есть список названий, которые я хочу подсветить в тексте.
Название может быть в начале или в конце строки и может быть обрамлено в кавычки.
Я написал такое выражение
/([\W\A])(название)([\W\Z])/u

и замену
$1<span class="selection">$2</span>$3

Но вот в чём проблема:
Есть название, например, Алекс.
Мне нужно выделить такие вхождения
[пробел]Алекс[пробел]
"Алекс"
Алекс.
Алекс,
и т.д.
Но не выделять подстроку Алекс в слове Алексей

  Ответить  
 
 автор: Tonik992   (09.06.2010 в 17:20)   письмо автору
 
   для: Andrew4fr   (08.06.2010 в 17:06)
 

(название)(?![\w]+)

попробуй так

  Ответить  
 
 автор: sl1p   (10.06.2010 в 03:05)   письмо автору
 
   для: Andrew4fr   (08.06.2010 в 17:06)
 

\b(название)\b
?

  Ответить  
 
 автор: Andrew4fr   (10.06.2010 в 12:15)   письмо автору
 
   для: sl1p   (10.06.2010 в 03:05)
 

К сожалению, эта конструкция не работает с юникодом.
Нашёл такое решение
/(?<!\pL)(название)(?!\pL)/u

  Ответить  
 
 автор: neadekvat   (10.06.2010 в 22:29)   письмо автору
 
   для: Andrew4fr   (08.06.2010 в 17:06)
 

> Название может быть в начале или в конце строки и может быть обрамлено в кавычки.
В условии ведь нет, что оно может быть в середине слова. А если может, то зачем все эти телодвижения? Просто заменить "слово" на "<span class="selection">слово</span>"

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

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