JGCSCS 4 C# *.cs JGsoft support@editpadpro.com http://www.editpadpro.com http://www.ecma-international.org/publications/standards/Ecma-334.htm TRUE // 0 5 #region preprocessor // comment public static void Test() { Number = 1234; String = "abcdef"; } 0 FALSE 13 Single-line comment //.*+ FALSE FALSE 5 0 0 TRUE Multi-line comment /\* FALSE TRUE 5 0 3 FALSE Bracket [{}]++ FALSE FALSE 17 0 0 FALSE String Closing quote optional so an unclosed string is still colored as a string "[^"\\\r\n]*+(?:\\(?:.|$)[^"\\\r\n]*+)*+"? FALSE FALSE 9 0 0 TRUE Character Closing quote optional so an unclosed string is still colored as a string '[^'\\\r\n]*+(?:\\(?:.|$)[^'\\\r\n]*+)*+'? FALSE FALSE 9 0 0 FALSE Verbatim string @"[^"\\]*+(?:\\(?:.|\z)[^"\\]*+)*+"? FALSE TRUE 9 0 0 FALSE Identifier @\w++ FALSE FALSE 0 0 0 FALSE Hexadecimal number \b0x[0-9A-F]++(?:ul?+|lu?+)?+\b TRUE FALSE 10 0 0 FALSE Integer \b[0-9]++(?:ul?+|lu?+)?+\b TRUE FALSE 10 0 0 FALSE Float [0-9]*+\.[0-9]++(?:e[+-]?+[0-9]++)?+[fdm]?+\b TRUE FALSE 10 0 0 FALSE Reserved words \b(?>abstract|as|base|bool|break|byte|case|catch|char|checked|class|const|continue|decimal|default|delegate|do(?:uble)?+|else|enum|event|explicit|extern|false|finally|fixed|float|for(?:each)?+|goto|if|implicit|in(?:t(?:erface|ernal)?+)?+|is|lock|long|namespace|new|null|object|operator|out|override|params|private|protected|public|readonly|ref|return|sbyte|sealed|short|sizeof|stackalloc|static|string|struct|switch|this|throw|true|try|typeof|uint|ulong|unchecked|unsafe|ushort|using|virtual|void|volatile|while)\b FALSE FALSE 7 0 -1 FALSE Operator [-+*/=<>%&^|!~?()[\]]++ FALSE FALSE 13 0 0 FALSE Preprocessor statement Can be terminated by a single-line comment ^[ \t]*+#[ \t]*+(?>define|undef|if|elif|else|endif|line|error|warning|region|endregion)\b.*?(?=//|$) FALSE FALSE 11 0 0 FALSE 6 { } TRUE 3 ( ) TRUE 3 [ ] TRUE 3 /* */ FALSE 2 ' ' FALSE 2 " " FALSE 2 1 Multi-line Comment 1 5 TRUE 1 Closing */ \*/ FALSE FALSE 5 0 1 FALSE