using System;
using System.Collections .Generic ;
using System.IO ;
using System.Linq ;
using System.Text .RegularExpressions ;
public class Test
{
public static void Main( )
{
var lst = new List< string> { "70707_70708_70709_display1.jpg" ,
"70707_Front010.jpg" ,
"626-this files is tagged.jpg" ,
"1000x1000_webbanner2.jpg" ,
"2000 years ago_files.jpg" ,
"626gamingassets_styleguide.jpg" } ;
foreach ( var s in lst)
{
var mcoll = Regex.Matches ( s, @"^(?<v>\d{3,})(?:_(?<v>\d{3,}))*_" )
.Cast < Match> ( )
.SelectMany ( m => m.Groups [ "v" ] .Captures .Cast < Capture> ( ) .Select ( c => c.Value ) )
.ToList ( ) ;
if ( mcoll.Count > 0 )
Console.WriteLine ( "Results: {0}" , string.Join ( ", " , mcoll) ) ;
else
Console.WriteLine ( "No match: '{0}'" , s) ;
}
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLklPOwp1c2luZyBTeXN0ZW0uTGlucTsKdXNpbmcgU3lzdGVtLlRleHQuUmVndWxhckV4cHJlc3Npb25zOwoKcHVibGljIGNsYXNzIFRlc3QKewoJcHVibGljIHN0YXRpYyB2b2lkIE1haW4oKQoJewoJCXZhciBsc3QgPSBuZXcgTGlzdDxzdHJpbmc+IHsiNzA3MDdfNzA3MDhfNzA3MDlfZGlzcGxheTEuanBnIiwKCQkJIjcwNzA3X0Zyb250MDEwLmpwZyIsCgkJCSI2MjYtdGhpcyBmaWxlcyBpcyB0YWdnZWQuanBnIiwKCQkJIjEwMDB4MTAwMF93ZWJiYW5uZXIyLmpwZyIsCgkJCSIyMDAwIHllYXJzIGFnb19maWxlcy5qcGciLAoJCQkiNjI2Z2FtaW5nYXNzZXRzX3N0eWxlZ3VpZGUuanBnIiB9OwoJICAgICAgICBmb3JlYWNoICh2YXIgcyBpbiBsc3QpIAoJICAgICAgICB7CgkgICAgICAgIAl2YXIgbWNvbGwgPSBSZWdleC5NYXRjaGVzKHMsIEAiXig/PHY+XGR7Myx9KSg/Ol8oPzx2PlxkezMsfSkpKl8iKQoJICAgICAgICAJCS5DYXN0PE1hdGNoPigpCgkgICAgICAgIAkJLlNlbGVjdE1hbnkobSA9PiBtLkdyb3Vwc1sidiJdLkNhcHR1cmVzLkNhc3Q8Q2FwdHVyZT4oKS5TZWxlY3QoYyA9PiBjLlZhbHVlKSkKCSAgICAgICAgCQkuVG9MaXN0KCk7CgkgICAgICAgIAlpZiAobWNvbGwuQ291bnQgPiAwKQoJICAgICAgICAJCUNvbnNvbGUuV3JpdGVMaW5lKCJSZXN1bHRzOiB7MH0iLCBzdHJpbmcuSm9pbigiLCAiLCBtY29sbCkpOwoJICAgICAgICAJZWxzZQoJICAgICAgICAJCUNvbnNvbGUuV3JpdGVMaW5lKCJObyBtYXRjaDogJ3swfSciLCBzKTsKCSAgICAgICAgfQoJfQp9