using System;
using System.Text.RegularExpressions;
using System.Collections.Generic;
public class Test
{
public static void Main()
{
List<string> nomes = new List<string> {
@"Cliente1\Rem\COB0111111.REM.txt",
@"Cliente1\Rem\23123123.REM.txt",
@"Cliente1\OK\COB02222222.REM.txt",
@"Cliente1\Ret\COB0613062019.REM.txt",
"COB0613062019.REM.txt",
@"Cliente2\COB0613062019.REM.txt",
@"Cliente2\Rem\COB0633333.REM.txt",
@"Cliente2\Rem\pasta2\COB02123123.REM.txt",
@"Cliente2\Bla\Rem\COB0613062019.REM.txt",
@"Cliente1\COB0613062019.REM.txt",
@"Rem\COB0613062019.REM.txt",
"Rem",
"Cliente3"
};
List<String> nomesValidos = new List<string>();
Regex regex = new Regex(@"^[^\\]+\\Rem\\([^\\]+)$", RegexOptions.IgnoreCase);
foreach (string nome in nomes)
{
Match match = regex.Match(nome);
if (match.Success)
{
nomesValidos.Add(match.Groups[1].Value);
}
}
foreach (string nome in nomesValidos)
{
Console.WriteLine(nome);
}
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGV4dC5SZWd1bGFyRXhwcmVzc2lvbnM7CnVzaW5nIFN5c3RlbS5Db2xsZWN0aW9ucy5HZW5lcmljOwoKcHVibGljIGNsYXNzIFRlc3QKewoJcHVibGljIHN0YXRpYyB2b2lkIE1haW4oKQoJewoJCUxpc3Q8c3RyaW5nPiBub21lcyA9IG5ldyBMaXN0PHN0cmluZz4gewoJCQlAIkNsaWVudGUxXFJlbVxDT0IwMTExMTExLlJFTS50eHQiLAoJCQlAIkNsaWVudGUxXFJlbVwyMzEyMzEyMy5SRU0udHh0IiwKCQkJQCJDbGllbnRlMVxPS1xDT0IwMjIyMjIyMi5SRU0udHh0IiwKCQkJQCJDbGllbnRlMVxSZXRcQ09CMDYxMzA2MjAxOS5SRU0udHh0IiwKCQkJIkNPQjA2MTMwNjIwMTkuUkVNLnR4dCIsCgkJCUAiQ2xpZW50ZTJcQ09CMDYxMzA2MjAxOS5SRU0udHh0IiwKCQkJQCJDbGllbnRlMlxSZW1cQ09CMDYzMzMzMy5SRU0udHh0IiwKCQkJQCJDbGllbnRlMlxSZW1ccGFzdGEyXENPQjAyMTIzMTIzLlJFTS50eHQiLAoJCQlAIkNsaWVudGUyXEJsYVxSZW1cQ09CMDYxMzA2MjAxOS5SRU0udHh0IiwKCQkJQCJDbGllbnRlMVxDT0IwNjEzMDYyMDE5LlJFTS50eHQiLAoJCQlAIlJlbVxDT0IwNjEzMDYyMDE5LlJFTS50eHQiLAoJCQkiUmVtIiwKCQkJIkNsaWVudGUzIgoJCX07CgkJTGlzdDxTdHJpbmc+IG5vbWVzVmFsaWRvcyA9IG5ldyBMaXN0PHN0cmluZz4oKTsKCQlSZWdleCByZWdleCA9IG5ldyBSZWdleChAIl5bXlxcXStcXFJlbVxcKFteXFxdKykkIiwgUmVnZXhPcHRpb25zLklnbm9yZUNhc2UpOwoJCWZvcmVhY2ggKHN0cmluZyBub21lIGluIG5vbWVzKQoJCXsKCQkJTWF0Y2ggbWF0Y2ggPSByZWdleC5NYXRjaChub21lKTsKCQkJaWYgKG1hdGNoLlN1Y2Nlc3MpCgkJCXsKCQkJCW5vbWVzVmFsaWRvcy5BZGQobWF0Y2guR3JvdXBzWzFdLlZhbHVlKTsKCQkJfQoJCX0KCiAgICAgICAgZm9yZWFjaCAoc3RyaW5nIG5vbWUgaW4gbm9tZXNWYWxpZG9zKQogICAgICAgIHsKICAgICAgICAJQ29uc29sZS5Xcml0ZUxpbmUobm9tZSk7CiAgICAgICAJfQogICAgfQp9