2008-08-05 4 views

ответ

50

Вы должны поместить образец в скобках /([A-Z])/, как это:

preg_replace("/([A-Z])/", "<span class=\"initial\">$1</span>", $str) 
+7

@Gumbo: Ответ на ваши вопросы совершенно прекрасен, даже поощряется, если вопрос не является дубликатом другого на сайте. – 2009-06-23 18:00:09

8

Из preg_replace documentation на php.net:

замены может содержать ссылки на form \ n или (начиная с PHP 4.0.4) $ n, , причем последняя форма является pr отложенный. Каждая такая ссылка будет заменена текстом, снятым по n-ой скобке.

См. Пример Flubba.

25

\0 также будет соответствовать всему согласованному выражению без явного захвата с использованием скобок.

preg_replace("/[A-Z]/", "<span class=\"initial\">\\0</span>", $str) 

Как всегда, вы можете пойти в php.net/preg_replace или php.net/ < любой поиск термина > искать документацию быстро. Текст документации:

\ 0 или $ 0 относится к тексту, сопоставляемому всем рисунком.

6

Используйте круглые скобки вокруг желаемого захвата.

 Смежные вопросы

  • Нет связанных вопросов^_^