2012-09-27 45 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.

相關問題