替换字符串(变量)php

替换字符串(变量)php,php,regex,Php,Regex,我有这样一个字符串:foo($bar1,$bar2) 如何使用regexp将每个变量替换为$variable 这是我的尝试(不起作用): $row['name']=preg\u replace(“/\$\w+/S”、“$1”、$row['name']); 我只希望变量被替换,并且在它们周围有一个span,我不希望逗号或空格被替换 我想要的是将我的字符串foo($bar1,$bar2)替换为foo($bar1,$bar2)($bar1和$bar2不是变量,是纯文本)。我可以看到一些问题: 因为

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

如何使用regexp将每个变量替换为
$variable

这是我的尝试(不起作用):

$row['name']=preg\u replace(“/\$\w+/S”、“$1”、$row['name']);
我只希望变量被替换,并且在它们周围有一个
span
,我不希望逗号或空格被替换


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

我可以看到一些问题:

  • 因为您对正则表达式使用双引号, 您需要使用两个
    \
    作为
    \\$
    来转义
    $
    。 或者,您也可以只使用单个 引用并使用
    \$
  • 您在替换中使用的是
    $1
    但是你没有任何团体参加 正则表达式。所以有
    ()
    在身边
    \$\w+
因此,请尝试:

$str = preg_replace('/(\$\w+)/', "<span>$1</span>", $str);
$str=preg\u replace(“/(\$\w+)/”、“$1”、$str);

$str=preg\u replace(“/(\\$\w+)/”、“$1”、$str);

.

前面/后面的例子不清楚。你能举个完整的例子吗?@Marwelin你得到了什么结果?
$str = preg_replace('/(\$\w+)/', "<span>$1</span>", $str);
$str = preg_replace("/(\\$\w+)/", "<span>$1</span>", $str);