summaryrefslogtreecommitdiff
path: root/sqlparse/keywords.py
diff options
context:
space:
mode:
authorVictor Uriarte <victor.m.uriarte@intel.com>2016-06-03 11:24:56 -0700
committerVictor Uriarte <victor.m.uriarte@intel.com>2016-06-04 11:54:18 -0700
commit2fcbee71724dd6311afe5a88106c4591bc1914ee (patch)
tree2de0e7ffa011ca727dbf206d57fa82b33571454a /sqlparse/keywords.py
parent5d0810b5ce607a5a5a92ce065424a17a924886a7 (diff)
downloadsqlparse-2fcbee71724dd6311afe5a88106c4591bc1914ee.tar.gz
Rewrite wildcard and placeholder regex
Diffstat (limited to 'sqlparse/keywords.py')
-rw-r--r--sqlparse/keywords.py11
1 files changed, 7 insertions, 4 deletions
diff --git a/sqlparse/keywords.py b/sqlparse/keywords.py
index a14fa55..9c4495b 100644
--- a/sqlparse/keywords.py
+++ b/sqlparse/keywords.py
@@ -28,15 +28,18 @@ SQL_REGEX = {
(r':=', tokens.Assignment),
(r'::', tokens.Punctuation),
- (r'[*]', tokens.Wildcard),
+
+ (r'\*', tokens.Wildcard),
+
(r'CASE\b', tokens.Keyword), # extended CASE(foo)
(r"`(``|[^`])*`", tokens.Name),
(r"´(´´|[^´])*´", tokens.Name),
(r'\$([^\W\d]\w*)?\$', tokens.Name.Builtin),
- (r'\?{1}', tokens.Name.Placeholder),
- (r'%\(\w+\)s', tokens.Name.Placeholder),
- (r'%s', tokens.Name.Placeholder),
+
+ (r'\?', tokens.Name.Placeholder),
+ (r'%(\(\w+\))?s', tokens.Name.Placeholder),
(r'[$:?]\w+', tokens.Name.Placeholder),
+
# FIXME(andi): VALUES shouldn't be listed here
# see https://github.com/andialbrecht/sqlparse/pull/64
(r'VALUES', tokens.Keyword),