我想在preg_replace中添加一个变量。
代表: -
在这个流行的代码行中,我想添加$ text而不是“sometext”
$text = "sometext";
$lineOfValue = preg_replace("/.*sometext[\"', ]*/", "", $line);
任何人都可以帮助我吗?
答案 0 :(得分:1)
在正则表达式中,$符号表示正在处理的字符串的结尾,因此在@ Rizier123建议的正则表达式中包含变量将不起作用。
相反,应该将变量连接到正则表达式中,如下所示,以避免$被误解:
$text = 'sometext';
$lineOfValue = preg_replace("/.*" . $text . "[\"', ]*/", "", $line);
另外 - 如果你的$ text变量可能包含任何字符,你应该考虑使用preg_quote()使字符串在正则表达式中安全使用:
$text = 'sometext';
$lineOfValue = preg_replace("/.*" . preg_quote($text, '/') . "[\"', ]*/", "", $line);