Improved token names
Optional quotes around runat="server". Group capturing doesn't seem to work in lookaheads, so mismatched quotes will pass :(