diff options
| author | Michael Williamson <mike@zwobble.org> | 2016-11-24 20:58:49 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-11-24 20:58:49 +0000 |
| commit | 1b3d07bca1a8237052c0a81ff78b100662c0c19d (patch) | |
| tree | 0e54229b40a143dbda2a13209588e52ae6c1a7ed /mammoth/styles/parser/tokeniser.py | |
| parent | 310a5e5ceb5169a1c6fd67e0b22a08b6aa6a1328 (diff) | |
Update tokeniser
Diffstat (limited to 'mammoth/styles/parser/tokeniser.py')
| -rw-r--r-- | mammoth/styles/parser/tokeniser.py | 17 |
1 files changed, 4 insertions, 13 deletions
diff --git a/mammoth/styles/parser/tokeniser.py b/mammoth/styles/parser/tokeniser.py index 0f2bbe9..2e8c2c2 100644 --- a/mammoth/styles/parser/tokeniser.py +++ b/mammoth/styles/parser/tokeniser.py @@ -38,22 +38,13 @@ def _to_regex(value): _string_prefix = r"'(?:\\.|[^'])*" +_identifier_character = r"(?:[a-zA-Z\-_]|\\.)" tokenise = regex_tokeniser([ - ("identifier", r"[a-zA-Z][a-zA-Z0-9\-]*"), - ("class name", r"\.(?:[a-zA-Z0-9\-]|\\.)+"), - ("colon", r":"), - ("greater than", r">"), + ("identifier", _identifier_character + "(?:" + _identifier_character + "|[0-9])*"), + ("symbol", r":|>|=>|\^=|=|\(|\)|\[|\]|\||!|\."), ("whitespace", r"\s+"), - ("arrow", r"=>"), - ("equals", r"="), - ("open paren", r"\("), - ("close paren", r"\)"), - ("open square bracket", r"\["), - ("close square bracket", r"\]"), ("string", _string_prefix + "'"), ("unterminated string", _string_prefix), - ("integer", r"([0-9]+)"), - ("choice", r"\|"), - ("bang", r"(!)"), + ("integer", "([0-9]+)"), ]) |
