|
Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Обработка строки preg_replace |
|
|
Обработка строки preg_replace
|
Ветеран Сообщения: 575 |
Результат работы скрипты такой: <a href="ssilka4">Семь</a> и ещё world <a href="ssilka1">World</a> семь Буквы world разные и т.д. <a href="ssilka2">пять и два</a> потом World Пять и два государственный. Семь <a href="ssilka3">государств</a> и Шесть паШесть А должен быть: Результат работы скрипты такой: <a href="ssilka4">Семь</a> и ещё <a href="ssilka1">world</a> World семь Буквы world разные и т.д. <a href="ssilka2">пять и два</a> потом World Пять и два государственный. Семь <a href="ssilka3">государств</a> и Шесть паШесть Т.е. скрипт в тексте оборчивает нужными тегами самые первые вхождения слов (повторения не оборачивает), слова для оборачивания в массиве, также теги. Проблема в том что что-то с регистром, т.е. слово World обернулось, а должно было world с маленькой буквы, так как оно первое вхождение. Подскажите в чем проблема, плиз? |
|
Отправлено: 19:18, 28-01-2009 |
Ветеран Сообщения: 1862
|
Профиль | Сайт | Отправить PM | Цитировать Цитата venuko:
![]() //$words[$i] = "/(?<![a-z0-9а-я])(".preg_quote($words[$i]).")(?![a-z0-9а-я])/iu"; буковку i надо разместить до слэша. Именно i отвечает за регистронезависимость. Ну, а вообще регулярки мне всё время даются трудно. |
|
------- Отправлено: 21:05, 28-01-2009 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 1862
|
Профиль | Сайт | Отправить PM | Цитировать Нет я не прав.
$words[$i] = '/(?<=\s|^)(' . preg_quote($words[$i]) . ')(?=\s|$)/i'; Смотри здесь - http://forum.oszone.net/post-1011765-10.html |
------- Отправлено: 21:30, 28-01-2009 | #3 |
Ветеран Сообщения: 575
|
Профиль | Отправить PM | Цитировать заменил на это вроде пашет:
$words[$i] = "/\b(".preg_quote($words[$i]).")\b/i"; это: Цитата Igor_I:
$words=array('World','пять и два','государств','СеМь','Два и Восемь','два и восемь'); $open_tags=array('<a href="ssilka1">','<a href="ssilka2">','<a href="ssilka3">','<a href="ssilka4">','<a href="ssilka5">','<a href="ssilka6">'); $close_tags=array('</a>','</a>','</a>','</a>','</a>','</a>'); $text = "Семь и ещё world World семь Буквы world разные и т.д. пять и два потом World Пять и два государственный. Семь государств и Шесть паШесть. Два и Восемь и ещё потом буквы два и восемь"; |
|
Отправлено: 21:39, 28-01-2009 | #4 |
Deadooshka Сообщения: 2517
|
Профиль | Отправить PM | Цитировать Цитата venuko:
если кодировка системы не соответствует, то флаг i не будет работать, поскольку не найдется другой регистр буквы (у нелатиницы)... т.е. нужно юзать setlocale с нужной кодировкой... |
||
Отправлено: 03:10, 29-01-2009 | #5 |
Ветеран Сообщения: 575
|
Профиль | Отправить PM | Цитировать Цитата Sham:
а вотс setlocale не пойму как её применить, на сайте кодировка wuindows-1251 не пинайте ![]() |
|
Отправлено: 09:29, 29-01-2009 | #6 |
Deadooshka Сообщения: 2517
|
Профиль | Отправить PM | Цитировать |
Отправлено: 10:39, 29-01-2009 | #7 |
Ветеран Сообщения: 575
|
Профиль | Отправить PM | Цитировать Цитата Sham:
|
|
Отправлено: 10:49, 29-01-2009 | #8 |
Deadooshka Сообщения: 2517
|
Профиль | Отправить PM | Цитировать |
Отправлено: 11:04, 29-01-2009 | #9 |
Ветеран Сообщения: 575
|
Профиль | Отправить PM | Цитировать локаль проверил она такая KOI8-R/ru_RU
|
Отправлено: 11:19, 29-01-2009 | #10 |
|
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
MySQL - Автозамена строки из другой строки - trigger? procedure ? | BugZZ | Программирование и базы данных | 0 | 18-09-2009 09:51 | |
Обработка формы | ][alter | Вебмастеру | 10 | 18-12-2007 00:18 | |
Обработка видео | Antonij | Видео и аудио: обработка и кодирование | 14 | 29-03-2007 21:44 | |
Обработка лог-файла на C++ | Guest | Программирование и базы данных | 17 | 23-03-2004 01:11 | |
обработка и отправка форм | MXM | Вебмастеру | 3 | 29-01-2004 19:18 |
|