我正在开发一种供个人使用的自动下载程序,到目前为止,我已设法将程序设置为存储提供给字符串的链接源,下载链接以纯文本形式写入来源,那么我需要做的是,搜索一个字符串,例如“http://media.website.com/folder/”并让它将所有出现的内容返回到列表中?问题是,我还需要在/ folder /“之后为每个文件提供唯一的id,以及上面出现的每个文件,任何想法?我使用Visual C#。
感谢!!!
史蒂芬
答案 0 :(得分:0)
也许是这样的?
Dictionary<string, string> dictionary = new Dictionary<string, string>();
string searchText = "Text to search here";
string textToFind = "Text to find here";
string fileID = "";
bool finished = false;
int foundIndex = 0;
while (!finished)
{
foundIndex = searchText.IndexOf(textToFind, foundIndex);
if (foundIndex == -1)
{
finished = true;
}
else
{
//get fieID, change to whatever logic makes sense, in this example
//it assumes a 2 character identifier following the search text
fileID = searchText.Substring(foundIndex + searchText.Length, 2);
dictionary.Add(fileID, textToFind);
}
}
答案 1 :(得分:0)
使用Regex获取匹配项,这将为您提供所有匹配项的列表。使用通配符作为匹配项之间不同的数值,因此您可以解析它。
我对Regex不太满意,但它就像是,
Regex.Match(<your string>,@"(http://media.website.com/folder/)(d+)")
答案 2 :(得分:0)
或者
var textToFind = "http://media.website.com/folder/";
var ids = from l in listOfUrls where l.StartsWith(textToFind) select new { RawUrl = l, ID=l.Substring(textToFind.Length)}