C#で文字列の抽出
C#でテキストファイルから5文字以上の数字があれば読み込みその前後10文字と数字を抜き出したいのですが、うまくいきません。。
string file = textBox1.Text;
string pattern_count = @"[0-9]{5,}";
IEnumerable<string> files =System.IO.Directory.EnumerateFiles(@file, "*", System.IO.SearchOption.AllDirectories);
foreach (string f in files)
{
StreamReader sr = new StreamReader(f, Encoding.GetEncoding("Shift_JIS"));
string str = sr.ReadToEnd();
sr.Close();
if (str.Contains(pattern_count))
{
System.Text.RegularExpressions.Regex r =new System.Text.RegularExpressions.Regex(@pattern_count ,System.Text.RegularExpressions.RegexOptions.IgnoreCase);
System.Text.RegularExpressions.MatchCollection m = r.Matches(f);
while (m.Success)
{
Console.WriteLine(m.Value);
m = m.NextMatch();
}
}
}