我正在尝试创建一些电视节目的小数据库,它们的名称通常如下:
Show.Name.S01E01.Episode Name
OR
Show.Name.S01E01.Some.Stuff.Here.Episode名称
我怎样才能获得Show the Name和Season&剧集编号所以我留下了以下内容:
Show.Name.S01E01
我尝试使用以下内容,但它不像某些节目那样有效。在他们中,
explode(".", "Show.Name.S01E01.Some.Stuff.Here.Episode Name");
由于
答案 0 :(得分:3)
这会让你想要你想要的东西:
<?php
function getShowInfo($str) {
if (preg_match('/^(.+?)\.S(\d+)E(\d+)(?:.+?)?\.[^.]+$/',$str, $m))
return $m;
return null;
}
print_r(getShowInfo('Show Name.S01E02.Episode Name'));
print_r(getShowInfo('Show Name.S01E02.Some.Stuff.Here.Episode Name'));
示例输出:
Array
(
[0] => Show Name.S01E02.Episode Name
[1] => Show Name
[2] => 01
[3] => 02
)
Array
(
[0] => Show Name.S01E02.Some.Stuff.Here.Episode Name
[1] => Show Name
[2] => 01
[3] => 02
)
答案 1 :(得分:1)
$Parts = explode('.','Show Name.S01E01.Episode Name');
echo $Parts[0].'.'.$Parts[1];
输出
Show Name.S01E01
替代list()
list($ShowName, $EpisodeCode, $EpisodeName) = explode('.','Show Name.S01E01.Episode Name');
echo $ShowName.'.'.$EpisodeCode;
输出
Show Name.S01E01
小心,节目名称或剧集标题可能包含可能会给您带来问题的其他点