WikiFunctions.Parse.Parsers.FixLinksWikilinkBoldItalicsME C# (CSharp) Method

FixLinksWikilinkBoldItalicsME() private static method

Converts [[foo|'''foo''']] → '''[[foo|foo]]''' for bold, italics or bold and italics only simplify where link & target values are the same without bold/italics (first letter case insensitive)
private static FixLinksWikilinkBoldItalicsME ( Match m ) : string
m Match
return string
        private static string FixLinksWikilinkBoldItalicsME(Match m)
        {
            string theLinkText = m.Groups[2].Value, y = m.Value;

            if (theLinkText.Length > 0 && Tools.TurnFirstToUpper(m.Groups[1].Value.Trim()).Equals(Tools.TurnFirstToUpper(m.Groups[2].Value.Trim("'".ToCharArray()).Trim())))
            {
                if (WikiRegexes.Bold.Match(theLinkText).Value.Equals(theLinkText))
                    y = "'''" + y.Replace(theLinkText, WikiRegexes.Bold.Replace(theLinkText, "$1")) + "'''";
                else if (WikiRegexes.Italics.Match(theLinkText).Value.Equals(theLinkText))
                    y = "''" + y.Replace(theLinkText, WikiRegexes.Italics.Replace(theLinkText, "$1")) + "''";
                else if (WikiRegexes.BoldItalics.Match(theLinkText).Value.Equals(theLinkText))
                    y = "'''''" + y.Replace(theLinkText, WikiRegexes.BoldItalics.Replace(theLinkText, "$1")) + "'''''";
            }

            return y;
        }
Parsers