beginCommand < endCommand > beginInstruction <% endInstruction %> beginVariable endVariable firstString " secondString ' firstSingleLineComment // secondSingleLineComment beginFirstMultiLineComment /* endFirstMultiLineComment */ beginSecondMultiLineComment <!-- endSecondMultiLineComment --> functionDefinition ^\s*(static|public|private|protected|internal).*\(.*\).*\n?\s*{ removeFromFunction keywordsCaseSensitive recolourKeywordIfAlreadyColoured keywords taglib include page tag tagAttribute tagVariable language session contentType charset import buffer autoflush isThreadSafe info errorPage isErrorpage extends file uri prefix method name default required rtexprvalue id type scope abstract break case catch continue default do else extends final finally for if implements instanceof native new private protected public return static switch synchronized throw throws transient try volatile while package import boolean byte char class double float int interface long short void assert strictfp false null super this true goto const enum