在preg_replace中添加变量

时间:2015-02-23 08:13:06

标签: php preg-replace

我想在preg_replace中添加一个变量。

代表: -

在这个流行的代码行中,我想添加$ text而不是“sometext”

$text = "sometext";
$lineOfValue = preg_replace("/.*sometext[\"', ]*/", "", $line);

任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:1)

在正则表达式中,$符号表示正在处理的字符串的结尾,因此在@ Rizier123建议的正则表达式中包含变量将不起作用。

相反,应该将变量连接到正则表达式中,如下所示,以避免$被误解:

$text = 'sometext';
$lineOfValue = preg_replace("/.*" . $text . "[\"', ]*/", "", $line);

另外 - 如果你的$ text变量可能包含任何字符,你应该考虑使用preg_quote()使字符串在正则表达式中安全使用:

$text = 'sometext';
$lineOfValue = preg_replace("/.*" . preg_quote($text, '/') . "[\"', ]*/", "", $line);