■No33277に返信(みずちさんの記事) あまり参考にならないかもしれませんがそれらしい動作をするものを作ってみました。 -------------------------------------------------- ・ChofukuCheck.cs using System.Collections.Generic; namespace ConsoleApplication4 { public class ItemData { public int lineNum { get; } public string lineString { get; } public bool isChofuku { get; set; } public ItemData(int line,string str) { lineNum = line; lineString = str; isChofuku = false; } public bool ChofukuCheck(int ownNum,ref List<ItemData> iData) { bool chofuku = false; int ctr = 0; if(iData == null) { return false; } foreach(ItemData i in iData) { //HREFタグのみ検査対象とする if(lineString.IndexOf("<A HREF=")>=0) { //自分自身以外の行の文字列に等しいものがある場合 if(ctr != ownNum && lineString == i.lineString) { iData[ctr].isChofuku = true; chofuku = true;//自分自身の重複フラグをtrueにする } } ctr++; } return chofuku; } } } ---------------------------------------------------------- ・Program.cs using System; using System.Collections.Generic; using System.IO; namespace ConsoleApplication4 { class Program { static void Main(string[] args) { List<ItemData> iData = new List<ItemData>(); using (var fStream = new FileStream(@"F:\sample.txt", FileMode.Open, FileAccess.Read)) { using (var sReader = new StreamReader(fStream)) { int ctr = 0; while(sReader.EndOfStream == false) { iData.Add(new ItemData(ctr, sReader.ReadLine())); iData[ctr].isChofuku = iData[ctr].ChofukuCheck(ctr, ref iData); ctr++; } } } foreach(ItemData i in iData) { Console.WriteLine(i.lineNum + "," + i.lineString + "," + i.isChofuku); } Console.ReadLine(); } } } ------------------------------------------------------------------------- 重複チェックはこれでできるはずです、 ただし、当初の質問にあった5つの要件のうち >D重複箇所がどのグループに属するのかも取得したい。 この部分は考慮していません(「グループ」の仕様がデータサンプルから読み取れなかったため)。