diff options
author | Paul McGuire <ptmcg@users.noreply.github.com> | 2018-08-26 20:59:20 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-08-26 20:59:20 -0500 |
commit | 122fcea77927cc5b684094602c02e41de34c3c8b (patch) | |
tree | e0fffd5661dfe80d45a5474e8e2fbfe93066d8ed /pyparsing.py | |
parent | 23e0fee7e85278edb114746919ccaeffc47aebb0 (diff) | |
parent | e80949a845f3c8953e09d0e35bf9fbd6cfb0bd57 (diff) | |
download | pyparsing-git-122fcea77927cc5b684094602c02e41de34c3c8b.tar.gz |
Merge pull request #14 from demosdemon/srange
Modify srange to better handle Unicode characters in the input range spec
Diffstat (limited to 'pyparsing.py')
-rw-r--r-- | pyparsing.py | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/pyparsing.py b/pyparsing.py index 800ddd9..532bc85 100644 --- a/pyparsing.py +++ b/pyparsing.py @@ -4743,7 +4743,7 @@ stringEnd = StringEnd().setName("stringEnd") _escapedPunc = Word( _bslash, r"\[]-*.$+^?()~ ", exact=2 ).setParseAction(lambda s,l,t:t[0][1])
_escapedHexChar = Regex(r"\\0?[xX][0-9a-fA-F]+").setParseAction(lambda s,l,t:unichr(int(t[0].lstrip(r'\0x'),16)))
_escapedOctChar = Regex(r"\\0[0-7]+").setParseAction(lambda s,l,t:unichr(int(t[0][1:],8)))
-_singleChar = _escapedPunc | _escapedHexChar | _escapedOctChar | Word(printables, excludeChars=r'\]', exact=1) | Regex(r"\w", re.UNICODE)
+_singleChar = _escapedPunc | _escapedHexChar | _escapedOctChar | CharsNotIn(r'\]', exact=1)
_charRange = Group(_singleChar + Suppress("-") + _singleChar)
_reBracketExpr = Literal("[") + Optional("^").setResultsName("negate") + Group( OneOrMore( _charRange | _singleChar ) ).setResultsName("body") + "]"
|