rough regex lexer