powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (PHP) вложенная функция в preg_replace
5 сообщений из 5, страница 1 из 1
(PHP) вложенная функция в preg_replace
    #33150158
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
$ret = preg_replace("#[\n\r\s]($blue)[\n\r\s]#si", "str_replace('\\1','blue \\1','\\0')", $ret);

Делаю подсветку синтаксиса кода. В данном варианте он возвращает строку типа
Код: plaintext
Table structurestr_replace('for','blue for',' for ')table `segodnya

Если без str_replace то при подсветке захватывает соседние пробелы/переводы_строки/табы и как итог при двух подсвечиваемых словах подряд цвет меняется тока у первого.

Немогу понять почему вышеприведённый код неработает корректно.

P.S. http://ru.php.net/manual/ru/function.preg-replace.php - тут был, предложенные варианты неустраивают.
...
Рейтинг: 0 / 0
(PHP) вложенная функция в preg_replace
    #33150213
Фотография XM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А типа так?
Код: plaintext
1.
$ret = preg_replace("#((?<=[\n\r\s])|^)($blue)((?=[\n\r\s])|$)#si", "'blue \\2'", $ret);

Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
(PHP) вложенная функция в preg_replace
    #33150225
.-.-.-.-.-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
читай про модификатор e или preg_replace_callback
...
Рейтинг: 0 / 0
(PHP) вложенная функция в preg_replace
    #33150290
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 XM
СПАСИБО, работает. Тока вот как - непонимаю :(
Можно ссылочку?

2 .-.-.-.-.-
Это я проглядел. Тоже спасибо.


Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
(PHP) вложенная функция в preg_replace
    #33150313
Фотография XM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lissyara
2 XM
СПАСИБО, работает. Тока вот как - непонимаю :(
Можно ссылочку?

Работает с помощью вот таких фиговин, которые при поиске не включаются в найденный текст:

perldoc perlre
(?=pattern)
A zero-width positive look-ahead assertion.
For example, "/\w+(?=\t)/" matches a word followed by a
tab, without including the tab in $&.

(?<=pattern)
A zero-width positive look-behind assertion.
For example, "/(?<=\t)\w+/" matches a word that follows a
tab, without including the tab in $&.
Works only for fixed-width look-behind.

Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (PHP) вложенная функция в preg_replace
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]