public static Regex TemplateNameRegex()
{
string TemplateNamespace;
try
{
TemplateNamespace = Variables.NamespacesCaseInsensitive[Namespace.Template];
}
catch
{
TemplateNamespace = "[Tt]emplate:";
}
// allow whitespace before semicolon
TemplateNamespace = Regex.Replace(TemplateNamespace, @":$", @"[\s_]*:");
return (new Regex(@"{{\s*(?::?[\s_]*" + TemplateNamespace + @"[\s_]*)?([^\|{}]+?)(?:\s*(?:<!--.*?-->|⌊⌊⌊⌊M?\d+⌋⌋⌋⌋)\s*)?\s*(?:\||}})"));
}