algo.ShuntingYard.tokenize(): Support double quotes

tokenize() only sorts single quoted strings into QUOTED, fix that.

Signed-off-by: Jan Lindemann <jan@janware.com>
This commit is contained in:
Jan Lindemann 2025-06-27 09:46:12 +02:00
commit 271ea32dcd

View file

@ -86,7 +86,7 @@ class ShuntingYard(object): # export
scanner = re.Scanner([ scanner = re.Scanner([
(regex, lambda scanner,token:(KEYW, token)), (regex, lambda scanner,token:(KEYW, token)),
(r"'[^']*'", lambda scanner,token:(QUOTED, token[1:-1])), (r"('|\")[^'\"]*('|\")", lambda scanner,token:(QUOTED, token[1:-1])),
(r"[^\s()]+", lambda scanner,token:(ARG, token)), (r"[^\s()]+", lambda scanner,token:(ARG, token)),
(r"\s+", None), # None == skip token. (r"\s+", None), # None == skip token.
]) ])