我需要对两个字符串进行比较。第一个字符串看起来像这样:
http://my.app/admin/users/administrators/{id}/edit
第二个字符串看起来像这样:
http://my.app/admin/users/administrators/1/edit
{id}
值表示一个数字字符,因此,上面的字符串应该匹配。如果我要对这个字符串进行比较,那么它将不匹配:
http://my.app/admin/users/administrators/xxx/edit
如何检查字符串是否匹配使用PHP/Laravel?
您可以使用forward来实现这个
/(?<=administrators'/)'d+(?='/edit)/
这里的正则表达式解释
PHP:$re = "/(?<=administrators''/)''d+(?=''/edit)/";
$str = "http://my.app/admin/users/administrators/1/edit";
preg_match($re, $str, $matches);
UPDATE:由于url只包含一个数字组合,所以我们可以直接使用
/'d+/
这里的正则表达式解释