2012-09-27 88 views
2

我在查找有关用于分析文件路径名称的工具,方法和技术的信息。我不是在谈论文件大小,读取/写入时间或文件类型,而是分析自己的路径或URL。文件路径名称或URL分析

我只知道基本的词频文本工具或方法,但我想知道是否有更先进的东西用于/应用于此尝试并从中挖掘出额外的信息。

谢谢!

更新:

这是我想要的最狭窄的例子。好了,我有一些全路径名作为这样的字符串:

F:\Task_Order_Projects\TO_01_NYS\Models\MapShedMaps\Random_File1.doc 
F:\Task_Order_Projects\TO_01_NYS\Models\MapShedMaps\Random_File2.doc 
F:\Task_Order_Projects\TO_01_NYS\Models\MapShedMaps\Random_File3.doc 
F:\Task_Order_Projects\TO_01_NYS\Models\MapShedMaps\Random_File4.doc 
F:\Task_Order_Projects\TO_01_NYS\Models\MapShedMaps\Random_File5.doc 

F:\Task_Order_Projects\TO_02_NYS\Models\MapShedMaps\Random_File1.doc 
F:\Task_Order_Projects\TO_02_NYS\Models\MapShedMaps\Random_File2.doc 
F:\Task_Order_Projects\TO_02_NYS\Models\MapShedMaps\Random_File3.doc 
F:\Task_Order_Projects\TO_02_NYS\Models\MapShedMaps\Random_File4.doc 
F:\Task_Order_Projects\TO_02_NYS\Models\MapShedMaps\Random_File5.doc 

我想知道的是,出现在文件夹MapShedMaps“唯一”的2倍。如果我在弦上做频率,我会得到10次出场。问题是我不知道这个目录中的哪个级别是重要的,所以我希望根据我所描述的内容在目录的每个级别有一个唯一的计数。

+0

你能不能给你想要从URL来收集信息的类型的例子吗?您可能会尝试查找用于检查URI信息的工具。 URL实际上是URI的一个子集,可能会限制你从那里的工具。如果你有兴趣,这家伙会解释一下。 http://www.bernzilla.com/item.php?id=100 – Ccorock

+0

当然,理想情况下,我希望看到高频名称与其父目录之间的关系。所以说大量的路径以“成本模型”结束,我想知道是否有一个父级结构中的一个参与者会表明所使用的“成本模型”名称的高比例。 – Steve

+0

你有尝试工作的首选语言吗?或者你只是寻找实现这一目标的通用手段? – Ccorock

回答

2

这是一个非常广泛的问题,所以我很难给你一个答案,但我会给你我的第一个想法。

首先,

正则表达式类.NET的是用于解析大量的信息是非常有用的。它太强大了,容易让人不耐烦,但是一旦掌握了它,就可以在文本编辑器,.NET以及我相信的任何其他可敬的语言中使用。这将允许您搜索字符串并将其分离到目录中。这可能是矫枉过正,取决于你如何使用它,但它的思想。 Here is a favorite link of mine to try out some regular expressions.

其次,

您将需要一个数据库,我更喜欢使用SQL。研究如何连接到数据库和创建数据库。有了这个数据库,您可以存储从您输入的原始路径中抽象出的所有字段。如父目录,子目录,访问的常用文件类型。只要有一个领域的每一个这些,并通过查询,你可以形成一个关于冗余的假设。

三,

我不知道,如果它的方便,但你可能看看窗户是否存储访问的文件历史记录。似乎有些暗示过去曾打开过哪些文件。所以在Windows中可能存在一个资源,它已经存储了大量将存储在数据库中的信息。如果你能找到一种方法来访问这些信息。用正则表达式解析并重新提交给应用程序的数据库。你可以控制世界! j/k ...虽然你可以对用户访问模式做出很好的预测。

四,

我总是尽量坚持与我有什么用。如果.NET坐在你的面前,那就试着去做你想做的事。如果你到达了一堵墙。至少你的进步取得了进展。在今天的面向对象编程的议案中,通常可以将一个程序收集的数据更改为另一个可接受的格式。你只需要挖一点。

哦,顺便说一句,Coursera.com实际上是在机器学习和算法上做一个免费的课程。您可能需要检查或参考预测公式。

祝你好运。

+0

谢谢,这是一个好的开始。我真的希望有人在解决URL /路径名称问题之前做更好的频率分析。我常用的频率方法非常有效,因为路径名称中的文件夹冗余。当具有100个项目的文件夹将显示比10个唯一文件夹中每个文件1个文件更高的频率时,弄清楚什么是独特的namming模式会变得棘手。后者是最有用的。 – Steve

+0

是的,我明白了。 .Net通过Directoryinfo.getdirectories或directoryinfo.getfiles方法可以区分文件和文件夹。这些可能对确定上面解释的两种情况之间的关联很有帮助。它甚至具有确定上次访问时间的属性。在MSDN帮助上查看它。 – Ccorock

+0

我保证,如果你缩小了一点你的问题,那么你将有更好的机会找到你要找的答案。 – Ccorock

0

我想张贴此作为一个评论,但SO保持编辑的双重\到\有两种,因为\是一个关键的角色,没有其他\逃吧,正则表达式将它解释为一个命令是很重要的。

嘿,我只是想让你知道,我一直在玩一些正则表达式...我知道一个很简单的方法在VB.net编写这个了,我会后,作为我的第二个答案,但我想你去检查回引用。如果括号之间的部分匹配时,捕获文本,并移到例如第二查询....

F:\\(directory1)?(directory2)?(directory3)? 

你可以用这些比赛来找出每个父目录有多少目录之下也。你正在跟着我吗? Here is a reference.

相关问题