【发布时间】:2015-07-01 06:08:37
【问题描述】:
我有一组具有任意名称的文件夹和文件。我的最终目标是解析文件夹和文件,并创建一组分类良好且命名的文件夹。这些标题有时有空格作为分隔符,有时有句点(我没有找到除分隔符之外的任何示例)。我想显示这些文件名,不带分隔符,只显示真实的单词(具体的文件标题和日期,如果日期相关)。我暂时不用担心日期,我有一个查找表可以根据拼写正确的标题找出日期。
标题示例:
-
a.bad.title.asdf.1975(其中 asdf 是从作者或网站上抓取文件)。
标题应为: A Bad Title (1975)
another bad title asdf.com 1975
应改为: Another Bad Title (1975)
a really.bad title[1975]
应改为:A Really Bad Title (1975)
我的尝试:
可能的解决方案:使用分隔符解析单词以提取每个单独的单词并使用大型字典进行单词搜索我必须弄清楚数组的给定元素是否是单词.
问题 1: A.bad.title.1975 变为 ('a', 'bad', 'title', '1975'),我可以毫无问题地使用它。然而,一个非常糟糕的标题[1975] 变成了('a', 'really', 'bad', 'title[1975]') 并且无法处理。
问题 2: 有些标题是数字或数字的一部分,例如 '71 或 2012 或 2001: A Space Odyssey,所以我不能只解析真正的单词是什么。
编辑(问题 2 示例):
文件名 1:'72.2014.asdf.txt
文件名 2:2012 [2009].txt
文件名 3:2001: a.space.odyssey[1968].txt
编辑结束
换句话说,我的问题是我希望能够删除给定的日期或随机数,但如果日期与标题有关(因为某些标题是日期或年份)和一些标题中的单词附加在标题中的年份(不带空格),无法解析。
我的最后一个想法可能是根据每个可能的标题有多少共同词来给它们打分,但这仍然没有解决“年份作为标题”的问题。
如果有人有任何建议可以帮助我思考这个问题,请告诉我!
【问题讨论】:
-
@Pradheep 代码没有任何问题,这是我遇到问题的代码背后的逻辑。