using System;
using System.Text.RegularExpressions;
public class Test
{
public static void Main()
{
var rx = new Regex(@"cgif.*\.txt$", RegexOptions.Compiled | RegexOptions.IgnoreCase | RegexOptions.Singleline);
bool x1=rx.IsMatch("abc\\cgif123.txt");
Console.WriteLine($"{x1}"); // should return true
bool x2=rx.IsMatch("abc\\cgif.txt");
Console.WriteLine($"{x2}"); // should return true
bool x3=rx.IsMatch("abc\\cgif.txtabc");
Console.WriteLine($"{x3}"); // should return false
}
}
dXNpbmcgU3lzdGVtOyAgIAp1c2luZyBTeXN0ZW0uVGV4dC5SZWd1bGFyRXhwcmVzc2lvbnM7CgpwdWJsaWMgY2xhc3MgVGVzdAp7CiAgICBwdWJsaWMgc3RhdGljIHZvaWQgTWFpbigpCiAgICB7CiAgICAgICAgdmFyIHJ4ID0gbmV3IFJlZ2V4KEAiY2dpZi4qXC50eHQkIiwgUmVnZXhPcHRpb25zLkNvbXBpbGVkIHwgUmVnZXhPcHRpb25zLklnbm9yZUNhc2UgfCBSZWdleE9wdGlvbnMuU2luZ2xlbGluZSk7CiAgICAgICAgYm9vbCB4MT1yeC5Jc01hdGNoKCJhYmNcXGNnaWYxMjMudHh0Iik7CiAgICAgICAgQ29uc29sZS5Xcml0ZUxpbmUoJCJ7eDF9Iik7IC8vIHNob3VsZCByZXR1cm4gdHJ1ZQogICAgICAgIAogICAgICAgIGJvb2wgeDI9cnguSXNNYXRjaCgiYWJjXFxjZ2lmLnR4dCIpOwogICAgICAgIENvbnNvbGUuV3JpdGVMaW5lKCQie3gyfSIpOyAvLyBzaG91bGQgcmV0dXJuIHRydWUKICAgICAgICAKICAgICAgICBib29sIHgzPXJ4LklzTWF0Y2goImFiY1xcY2dpZi50eHRhYmMiKTsKICAgICAgICBDb25zb2xlLldyaXRlTGluZSgkInt4M30iKTsgLy8gc2hvdWxkIHJldHVybiBmYWxzZQogICAgfQp9