diff options
| author | Andi Albrecht <albrecht.andi@gmail.com> | 2017-09-21 10:23:07 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2017-09-21 10:23:07 +0200 |
| commit | 1578f7da759f308a0538625cb37260fed34c9efe (patch) | |
| tree | 356e7c7e9c044c2d35335e0813e1d5428babe876 /sqlparse | |
| parent | 0dd67c791e0a9fdc29cffdc9d84f811fe124726a (diff) | |
| parent | 54551c472bdcb92679872b6bcd8348e5542fd2ee (diff) | |
| download | sqlparse-1578f7da759f308a0538625cb37260fed34c9efe.tar.gz | |
Merge pull request #330 from atronah/master
adds '1.' option support for float numbers regex
Diffstat (limited to 'sqlparse')
| -rw-r--r-- | sqlparse/keywords.py | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/sqlparse/keywords.py b/sqlparse/keywords.py index 649b5cc..a1242ab 100644 --- a/sqlparse/keywords.py +++ b/sqlparse/keywords.py @@ -54,15 +54,14 @@ SQL_REGEX = { # Spaces around period `schema . name` are valid identifier # TODO: Spaces before period not implemented (r'[A-ZÀ-Ü]\w*(?=\s*\.)', tokens.Name), # 'Name' . + # FIXME(atronah): never match, + # because `re.match` doesn't work with lookbehind regexp feature (r'(?<=\.)[A-ZÀ-Ü]\w*', tokens.Name), # .'Name' (r'[A-ZÀ-Ü]\w*(?=\()', tokens.Name), # side effect: change kw to func - - # TODO: `1.` and `.1` are valid numbers (r'-?0x[\dA-F]+', tokens.Number.Hexadecimal), (r'-?\d*(\.\d+)?E-?\d+', tokens.Number.Float), - (r'-?\d*\.\d+', tokens.Number.Float), + (r'-?(\d+(\.\d*)|\.\d+)', tokens.Number.Float), (r'-?\d+(?![_A-ZÀ-Ü])', tokens.Number.Integer), - (r"'(''|\\\\|\\'|[^'])*'", tokens.String.Single), # not a real string literal in ANSI SQL: (r'(""|".*?[^\\]")', tokens.String.Symbol), |
