Overview
Comment: | [build] use named groups in regex |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk | build |
Files: | files | file ages | folders |
SHA3-256: |
c761d5a874dc3f757cd8efca3020063e |
User & Date: | olr on 2017-05-03 10:03:21 |
Other Links: | manifest | tags |
Context
2017-05-03
| ||
14:14 | [fr] faux positif, impératif check-in: 8bc6507f80 user: olr tags: trunk, fr | |
10:03 | [build] use named groups in regex check-in: c761d5a874 user: olr tags: trunk, build | |
08:00 | [build] check if rules have same id check-in: 0dba21491a user: olr tags: trunk, build | |
Changes
Modified compile_rules.py from [2d30706580] to [d1b7f6f58e].
︙ | ︙ | |||
171 172 173 174 175 176 177 | sRuleId = sLineId sOption = False # False or [a-z0-9]+ name nPriority = 4 # Default is 4, value must be between 0 and 9 tGroups = None # code for groups positioning (only useful for JavaScript) cCaseMode = 'i' # i: case insensitive, s: case sensitive, u: uppercasing allowed cWordLimitLeft = '[' # [: word limit, <: no specific limit cWordLimitRight = ']' # ]: word limit, >: no specific limit | | | | | | | | | | | 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 | sRuleId = sLineId sOption = False # False or [a-z0-9]+ name nPriority = 4 # Default is 4, value must be between 0 and 9 tGroups = None # code for groups positioning (only useful for JavaScript) cCaseMode = 'i' # i: case insensitive, s: case sensitive, u: uppercasing allowed cWordLimitLeft = '[' # [: word limit, <: no specific limit cWordLimitRight = ']' # ]: word limit, >: no specific limit m = re.match("^__(?P<borders_and_case>[[<]\\w[]>])(?P<option>/[a-zA-Z0-9]+|)(?P<ruleid>\\(\\w+\\)|)(?P<priority>![0-9]|)__ *", s) if m: cWordLimitLeft = m.group('borders_and_case')[0] cCaseMode = m.group('borders_and_case')[1] cWordLimitRight = m.group('borders_and_case')[2] sOption = m.group('option')[1:] if m.group('option') else False if m.group('ruleid'): sRuleId = m.group('ruleid')[1:-1] if sRuleId in RULESET: print("# Warning. Several rules have the same id: " + sRuleId) RULESET.add(sRuleId) nPriority = dOptPriority.get(sOption, 4) if m.group('priority'): nPriority = int(m.group('priority')[1:]) s = s[m.end(0):] else: print("# Warning. No option defined at line: " + sLineId) #### REGEX TRIGGER i = s.find(" <<-") if i == -1: |
︙ | ︙ |