diff --git a/src/calibre/utils/search_query_parser.py b/src/calibre/utils/search_query_parser.py index 5b5dd570ff..f9c8f78c6b 100644 --- a/src/calibre/utils/search_query_parser.py +++ b/src/calibre/utils/search_query_parser.py @@ -142,14 +142,16 @@ class Parser(object): WORD = 2 QUOTED_WORD = 3 EOF = 4 + REPLACEMENTS = tuple((u'\\' + x, unichr(i + 1)) for i, x in enumerate(ur'\"()“”')) # Had to translate named constants to numeric values lex_scanner = re.Scanner([ - (r'[()]', lambda x,t: (Parser.OPCODE, t)), - (r'@.+?:[^")\s]+', lambda x,t: (Parser.WORD, unicode(t))), - (r'[^"()\s]+', lambda x,t: (Parser.WORD, unicode(t))), - (r'".*?((?