替换字符串(变量)php

时间:2011-01-01 11:15:08

标签: php regex

我有一个这样的字符串:foo($bar1, $bar2)

如何用regexp替换每个变量<span>$variable</span>

这是我的尝试(不工作):

$row['name'] = preg_replace("/\$\w+/S", "<span>$1</span>", $row['name']);

我只想要替换变量并在它们周围加span,我不想要替换逗号或空格。

我想要的是将我的字符串foo($bar1, $bar2)替换为foo(<span>$bar1</span>, <span>$bar2</span>)($ bar1和$ bar2不是变量,它是纯文本)。

1 个答案:

答案 0 :(得分:0)

以下是我可以看到的一些问题:

  • 由于正在使用双引号进行正则表达式, 您需要使用两个$ \来逃避\\$。 或者你也可以单独使用 引用并使用\$
  • 您在替换中使用$1 但你没有任何小组 正则表达式。所以有( )左右 \$\w+

所以试试:

$str = preg_replace('/(\$\w+)/', "<span>$1</span>", $str);

$str = preg_replace("/(\\$\w+)/", "<span>$1</span>", $str);

See it