diff options
author | Victor Uriarte <victor.m.uriarte@intel.com> | 2016-06-01 05:51:17 -0700 |
---|---|---|
committer | Victor Uriarte <victor.m.uriarte@intel.com> | 2016-06-04 15:24:50 -0700 |
commit | 5747015634a39191511de8db576f2cd0aa5eafc9 (patch) | |
tree | 88642eeb84d318511191a822fd781b44e1d63df1 | |
parent | ab1e8a1b823cb81bed7906463c6a44447b08f3b9 (diff) | |
download | sqlparse-filters_sql.tar.gz |
Refactor match logicfilters_sql
-rw-r--r-- | sqlparse/sql.py | 27 |
1 files changed, 9 insertions, 18 deletions
diff --git a/sqlparse/sql.py b/sqlparse/sql.py index 5dbb9f4..57bf1e7 100644 --- a/sqlparse/sql.py +++ b/sqlparse/sql.py @@ -71,32 +71,23 @@ class Token(object): if not type_matched or values is None: return type_matched - if regex: - if isinstance(values, string_types): - values = {values} + if isinstance(values, string_types): + values = (values,) - if self.ttype is T.Keyword: - values = set(re.compile(v, re.IGNORECASE) for v in values) - else: - values = set(re.compile(v) for v in values) + if regex: + # TODO: Add test for regex with is_keyboard = false + flag = re.IGNORECASE if self.is_keyword else 0 + values = (re.compile(v, flag) for v in values) for pattern in values: - if pattern.search(self.value): + if pattern.search(self.normalized): return True return False - if isinstance(values, string_types): - if self.is_keyword: - return values.upper() == self.normalized - return values == self.value - if self.is_keyword: - for v in values: - if v.upper() == self.normalized: - return True - return False + values = (v.upper() for v in values) - return self.value in values + return self.normalized in values def is_group(self): """Returns ``True`` if this object has children.""" |