diff options
author | Victor Uriarte <victor.m.uriarte@intel.com> | 2016-06-03 11:37:12 -0700 |
---|---|---|
committer | Victor Uriarte <victor.m.uriarte@intel.com> | 2016-06-04 11:54:24 -0700 |
commit | 689153a1fbe1bd8661c405e5305c4ac2414e55a8 (patch) | |
tree | 0b678c8cdd204902b2e63ac7727d6129ccda97b7 /sqlparse | |
parent | 752100443bd1a5ddd81d57166db887c1fbd9f7ef (diff) | |
download | sqlparse-689153a1fbe1bd8661c405e5305c4ac2414e55a8.tar.gz |
Clean regex for Number tokens
Diffstat (limited to 'sqlparse')
-rw-r--r-- | sqlparse/keywords.py | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/sqlparse/keywords.py b/sqlparse/keywords.py index 1b5d5f2..34e4d80 100644 --- a/sqlparse/keywords.py +++ b/sqlparse/keywords.py @@ -50,10 +50,12 @@ SQL_REGEX = { (r'(?<=\.)[A-Z]\w*', tokens.Name), # .'Name' (r'[A-Z]\w*(?=\()', tokens.Name), # side effect: change kw to func - (r'[-]?0x[0-9a-fA-F]+', tokens.Number.Hexadecimal), - (r'[-]?[0-9]*(\.[0-9]+)?[eE][-]?[0-9]+', tokens.Number.Float), - (r'[-]?[0-9]*\.[0-9]+', tokens.Number.Float), - (r'[-]?[0-9]+', tokens.Number.Integer), + # 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+', tokens.Number.Integer), + (r"'(''|\\\\|\\'|[^'])*'", tokens.String.Single), # not a real string literal in ANSI SQL: (r'(""|".*?[^\\]")', tokens.String.Symbol), |