Files
codeql/python/ql/test/library-tests/regex/Regex.ql
Taus Brock-Nannestad f07a7bf8cf Python: Autoformat everything using qlformat.
Will need subsequent PRs fixing up test failures (due to deprecated
methods moving around), but other than that everything should be
straight-forward.
2020-07-07 15:43:52 +02:00

25 lines
740 B
Plaintext

import python
import semmle.python.regex
predicate part(Regex r, int start, int end, string kind) {
r.alternation(start, end) and kind = "choice"
or
r.normalCharacter(start, end) and kind = "char"
or
r.specialCharacter(start, end, kind)
or
r.sequence(start, end) and kind = "sequence"
or
r.charSet(start, end) and kind = "char-set"
or
r.zeroWidthMatch(start, end) and kind = "empty group"
or
r.group(start, end) and not r.zeroWidthMatch(start, end) and kind = "non-empty group"
or
r.qualifiedItem(start, end, _) and kind = "qualified"
}
from Regex r, int start, int end, string kind
where part(r, start, end, kind) and r.getLocation().getFile().getBaseName() = "test.py"
select r.getText(), kind, start, end