在 PHP 中使用 preg_replace 时,我该如何获得匹配项?
2022-08-30 09:45:24
我试图抓住几个单词的大写字母,并将它们包装在span标签中。我正在使用preg_replace进行提取和包装,但它没有输出任何内容。
preg_replace("/[A-Z]/", "<span class=\"initial\">$1</span>", $str)
我试图抓住几个单词的大写字母,并将它们包装在span标签中。我正在使用preg_replace进行提取和包装,但它没有输出任何内容。
preg_replace("/[A-Z]/", "<span class=\"initial\">$1</span>", $str)
您需要将模式放在括号中,如下所示:/([A-Z])/
preg_replace("/([A-Z])/", "<span class=\"initial\">$1</span>", $str)
\0
还将匹配整个匹配的表达式,而无需使用括号进行显式捕获。
preg_replace("/[A-Z]/", "<span class=\"initial\">\\0</span>", $str)
与往常一样,您可以转到 php.net/preg_replace 或 php.net/<任何搜索词>以快速搜索文档。引用文档:
\0 或 $0 是指与整个模式匹配的文本。