using System;
using System.Text.RegularExpressions;
public class Test
{
public static void Main()
{
var s = "w:/a\\bc::/12\\xyz";
var r = new Regex(@"^\p{L}+[\p{L}\d:]*/[\p{L}\d]+\\[\p{L}\d]+$", RegexOptions.Compiled);
//The pattern is alphabets then zero or more numbers,alphabets,colon//
//then forward slash then one or more numbers,alphabets then backward slash//
//then again one or more numbers,alphabets
for (var q = 0; q < s.Length; ++q)
for (var w = q; w <= s.Length; ++w)
{
var cur = s.Substring(q, w-q);
if (r.IsMatch(cur))
Console.WriteLine("FOUND: {0}", cur);
}
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGV4dC5SZWd1bGFyRXhwcmVzc2lvbnM7CgpwdWJsaWMgY2xhc3MgVGVzdAp7CglwdWJsaWMgc3RhdGljIHZvaWQgTWFpbigpCgl7CgkJdmFyIHMgPSAidzovYVxcYmM6Oi8xMlxceHl6IjsKCQl2YXIgciA9IG5ldyBSZWdleChAIl5ccHtMfStbXHB7TH1cZDpdKi9bXHB7TH1cZF0rXFxbXHB7TH1cZF0rJCIsIFJlZ2V4T3B0aW9ucy5Db21waWxlZCk7CgkJLy9UaGUgcGF0dGVybiBpcyBhbHBoYWJldHMgdGhlbiB6ZXJvIG9yIG1vcmUgbnVtYmVycyxhbHBoYWJldHMsY29sb24vLwoJCS8vdGhlbiBmb3J3YXJkIHNsYXNoIHRoZW4gb25lIG9yIG1vcmUgbnVtYmVycyxhbHBoYWJldHMgdGhlbiBiYWNrd2FyZCBzbGFzaC8vCgkJLy90aGVuIGFnYWluIG9uZSBvciBtb3JlIG51bWJlcnMsYWxwaGFiZXRzCgkJZm9yICh2YXIgcSA9IDA7IHEgPCBzLkxlbmd0aDsgKytxKQoJCQlmb3IgKHZhciB3ID0gcTsgdyA8PSBzLkxlbmd0aDsgKyt3KQoJCQl7CgkJCQl2YXIgY3VyID0gcy5TdWJzdHJpbmcocSwgdy1xKTsKCQkJCWlmIChyLklzTWF0Y2goY3VyKSkKCQkJCQlDb25zb2xlLldyaXRlTGluZSgiRk9VTkQ6IHswfSIsIGN1cik7CgkJCX0KCX0KfQ==