我有一个正则表达式。我在很多在线正则表达式测试器中检查了它并且它在那里工作。但是当我想在我的代码中使用它时,它并没有返回正确的数据。
输入字符串是:
某些名称(年份)(网址)或某些名称(网址)
年份部分并非总是显示
这是我的代码:
$regex = '/(.*?(?:[ ]?\(\d{4}\))?)[ ]?\((.*?)\)$/';
preg_match($regex, $highlight[$row['id']]['person_image'][0], $person_image);
我想要的是带有年份的名称(如果退出),结束没有括号的网址,但之后$ person_image包含:
array(3) { [0]=> string(105) "Zorán (1998) (gallery/keyframe/2010/07/21/m2-30414/m2-30414-11333200.jpg)" [1]=> string(6) "Zorán" [2]=> string(96) "1998) (gallery/keyframe/2010/07/21/m2-30414/m2-30414-11333200.jpg" }
我的正则表达式有问题吗?