【发布时间】:2021-04-29 08:09:58
【问题描述】:
我正在尝试使用正则表达式调整 KODI 的搜索过滤器,以便抓取工具从其原始文件名中识别电视节目。
它们要么以这种模式出现: “电视节目名称 S04E01 一些额外信息”或此“电视节目名称 01 一些额外信息” 第一个不被识别,因为“S04”以多种方式扰乱搜索,这个需要去。 第二个不被识别,因为它需要在数字前加一个“e”,否则它不会被识别为集数。
所以我看到了两种方法。
-
让过滤器忽略s01-99
-
在任何独立的两位数字前面加上“e”,但我担心正则表达式是否能做到这一点。
我在正则表达式方面没有经验,但我一直在尝试想出这个,不出所料,这并不能解决问题
^(?!s{00,99})\d{2}$
【问题讨论】:
-
你能说得更具体点吗?你有
TV show name S04E01 some extra info和TV show name 01 some extra info。现在,你想得到什么结果?您使用什么工具来获得结果?你到底在尝试什么,什么不起作用?它是如何工作的? -
是的,请直接在问题中添加更多详细信息。
-
我觉得我的原始帖子太不具体了。所以我可以以两种格式获取我的节目,或者使用“S01E01”或仅使用“01”,我可以根据我能够获得的过滤器选择哪一种。如果什么都没有,它将假定为 S01。 Kodi scraper 理解电视节目剧集的唯一方法是“E01”格式。如果前面有“S02-S99”,则会导致问题,尤其是动漫,每个季节都有单独的文件夹。进击的巨人第 4 季被称为“进击的巨人:最后一季”对 Kodi 来说,这是最后一季的 S01,所以最好不要再说了。
-
kodi 有一个内置的正则表达式过滤器,可以根据需要进行调整/附加。 kodi.wiki/view/Advancedsettings.xml(在这种情况下为 tvshowmatching 部分)我正在尝试让此过滤器忽略文件名的所有“S00-S99”内容或将“E”添加到文件名中的独立两位数,取决于我将选择哪种源文件。我只需要其中一种解决方案即可工作,并将相应地调整源材料。 (发布组只有这两种命名策略)
-
好的,将
E添加到任何两位数都很容易:\b([0-9]{2})\b=>E$1,但您需要使用特定的正则表达式替换方法。我不知道kodi有没有。
标签: regex web-scraping kodi