From dbb4269487618e3d8aec27ec0b782ef0bea39bc3 Mon Sep 17 00:00:00 2001 From: Heng Li Date: Thu, 21 May 2015 22:29:24 -0400 Subject: [PATCH] support single-quotation mark and escaping --- kexpr.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/kexpr.c b/kexpr.c index b897b8c..e94f7db 100644 --- a/kexpr.c +++ b/kexpr.c @@ -115,9 +115,11 @@ static ke1_t ke_read_token(char *p, char **r, int *err, int last_is_val) // it d e.i = x, e.r = x; *r = pp; } - } else if (*p == '"') { // a string value - for (++p; *p && *p != '"'; ++p); // TODO: support escaping - if (*p == '"') { + } else if (*p == '"' || *p == '\'') { // a string value + int c = *p; + for (++p; *p && *p != c; ++p) + if (*p == '\\') ++p; // escaping + if (*p == c) { e.ttype = KET_VAL; e.vtype = KEV_STR; e.s = strndup(q + 1, p - q - 1); -- 2.47.3