如何在php中为正则表达式模式的假设添加括号?

时间:2017-10-12 05:52:12

标签: php regex

我想在字符串内的变量中添加括号。我怎样才能在使用正则表达式的php上做到这一点?

字符串: UPDATE item_tbl SET name = '$name',code = '$code',category_fk = $category_fk,modified_by_fk = $modified_by_fk,price = $price

正则表达式: /\$(\w*)/g

输出:

UPDATE item_tbl SET name = '($name)',code = '($code)',category_fk = ($category_fk),modified_by_fk = ($modified_by_fk),price = ($price)

1 个答案:

答案 0 :(得分:1)

你可以试试这个:

(\$\w+)

并替换为:

($1)

regex demo

示例解决方案(run here

$re = '/(\$\w+)/';
$str = 'UPDATE item_tbl SET name = \'$name\',code = \'$code\',category_fk = $category_fk,modified_by_fk = $modified_by_fk,price = $price';
$subst = '($1)';
$result = preg_replace($re, $subst, $str);
echo $result;

示例输出:

UPDATE item_tbl SET name = '($name)',code = '($code)',category_fk = ($category_fk),modified_by_fk = ($modified_by_fk),price = ($price)