使用 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]$/";
您好,我试图在 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]$/";