我有一个像这样的文件名
Birdman.2014.DVDSCR.X264-PLAYNOW.mkv 发散(2014年)720 p Blu-Ray x2649双音频-组织- TeamTNT ExClusive.mkv 摇篮2坟墓2003 HDTVRip 720 p双音音效+印地语~ BRAR
我得把电影的名字和年份分开
对于使用年份而言,perg_match类似
$s="Divergent (2014) 720p Blu-Ray x2649 [Dual-Audio][English DD 5.1 + Hindi DD 5.1] - Mafiaking - TeamTNT ExClusive.mkv";
if (preg_match('/\b\d{4}\b/', $s, $matches)) {
$year = $matches[0];
}
echo $year;结果:- 2014 //完美工作
但我也想得到电影的名字
发散 鸟人 摇篮2坟墓
我还检查了这个链接
Extracting movie name and year from string were year is optional
但什么都没发生
我是怎么弄到的?请帮助或提供提示来实现它。
发布于 2015-05-21 09:05:28
^.+?(?=\s*[(.]?(\d{4}))您可以尝试this.The电影名称将在匹配和年在第一个group.See演示。
https://regex101.com/r/vA0yQ3/2
$re = "/^.+?(?=\\s*[(.]?(\\d{4}))/mi";
$str = "\n\nBirdman.2014.DVDSCR.X264-PLAYNOW.mkv\n\nDivergent (2014) 720p Blu-Ray x2649 [Dual-Audio][English DD 5.1 + Hindi DD 5.1] - Mafiaking - TeamTNT ExClusive.mkv\n\nCradle 2 The Grave 2003 HDTVRip 720p Dual-Audio[Eng+Hindi] ~ BRAR\n";
preg_match_all($re, $str, $matches);https://stackoverflow.com/questions/30369085
复制相似问题