我做了这个正则表达式:\/film\/\d{4}\/+[A-Za-z0-9._%+-]+\/*$
匹配:stuffstuffstuff /膜/ YYYY /电影名称/PHP - 使用的preg_match无效正确的正则表达式
因此,例如,我需要匹配:http://www.mymovies.it/film/2013/moliereinbicicletta/
正则表达式是正确的,因为我在Regex Pal和RegExr上测试它。
我敢肯定,问题是关于PHP如何处理正则表达式或可能preg-match如何工作,但特别是我确定它有一些关于用反斜杠逃脱斜线。
这是你可以用它来有更好的理解这个问题的代码:
if (preg_match("\/film\/\d{4}\/+[A-Za-z0-9._%+-]+\/*$", "http://www.mymovies.it/film/2013/moliereinbicicletta/")) {
echo "It's working, Good!";
} else {
echo "It's not working :'(";
}
这几乎是凌晨3点,我想睡觉,但我想这个垃圾尽快完成越好,它已经已经4个小时的努力,并试图:'(
你逃脱正则表达式的开始。它应该是'/\/film\/\d{4}\/+[A-Za-z0-9._% + - ] + \/* $' – loveNoHate
在这种情况下,对不起'\/film \/\ d {4} \/+ [A-Za-z0-9 ._%+ - ] + \/* $ /'。错过了最后一个'/'分隔符。 – loveNoHate