使用 PHP preg_quote 时正则表达式显示不佳

Regex not displaying well whe using PHP preg_quote

您好,我试图在 PHP 中将该字符串转换为正则表达式之前连接该字符串,但问题是它没有按预期显示。我一直在使用 google 搜索并发现了 preg_quote,问题是它运行不正常。

这是我的例子:

$mystring = "banana"; // put this to a variable assume this value is dynamic
$regex_str = "/^"$mystring"\-[a-z0-9]\-[a-z0-9]$/"; 
//Im expecting expecting /^banana\-[a-z0-9]\-[a-z0-9]$/
$regex = preg_quote($regex_str);

但我得到的是:

/\^banana\\-\[a\-z0\-9\]\\-\[a\-z0\-9\]$/

并且总是返回错误的值。

在将其添加到正则表达式之前,对要添加的字符串调用 preg_quote()

$mystring = "banana";
$regex_str = "/^" . preg_quote($mystring, "/") . "\-[a-z0-9]\-[a-z0-9]$/";