\0
также будет соответствовать всему найденному выражению без явного захвата с использованием круглых скобок.
preg_replace("/[A-Z]/", "<span class=\"initial\">\\0</span>", $str)
Как всегда, вы можете перейти на php.net / preg_replace или php.net/< независимо от условия поиска> для быстрого поиска документации. Quoth документация:
\ 0 или $ 0 относится к тексту, который соответствует всему шаблону.