mirror of
https://github.com/github/codeql.git
synced 2026-05-01 03:35:13 +02:00
fix parse errors related to char escapes and char ranges
This commit is contained in:
@@ -0,0 +1,10 @@
|
||||
range
|
||||
| tst.js:1:13:1:17 | [w-z] | tst.js:1:14:1:16 | w-z |
|
||||
| tst.js:6:13:6:19 | [\\n-\\r] | tst.js:6:14:6:18 | \\n-\\r |
|
||||
| tst.js:7:13:7:18 | [\\n-z] | tst.js:7:14:7:17 | \\n-z |
|
||||
escapeClass
|
||||
| tst.js:2:13:2:16 | [\\w] | tst.js:2:14:2:15 | \\w |
|
||||
| tst.js:3:13:3:18 | [\\w-z] | tst.js:3:14:3:15 | \\w |
|
||||
| tst.js:4:13:4:19 | [\\w-\\w] | tst.js:4:14:4:15 | \\w |
|
||||
| tst.js:4:13:4:19 | [\\w-\\w] | tst.js:4:17:4:18 | \\w |
|
||||
| tst.js:5:13:5:18 | [z-\\w] | tst.js:5:16:5:17 | \\w |
|
||||
@@ -0,0 +1,9 @@
|
||||
import javascript
|
||||
|
||||
query predicate range(RegExpCharacterClass cla, RegExpCharacterRange range) {
|
||||
cla.getAChild() = range
|
||||
}
|
||||
|
||||
query predicate escapeClass(RegExpCharacterClass cla, RegExpCharacterClassEscape escape) {
|
||||
cla.getAChild() = escape
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
var reg1 = /[w-z]/; // normal range w-z, matches: wxyz
|
||||
var reg2 = /[\w]/; // escape class, same as \w.
|
||||
var reg3 = /[\w-z]/; // escape class \w and "-" and "z", same as [a-zA-Z0-9\-z]
|
||||
var reg4 = /[\w-\w]/; // escape class \w (twice) and the char "-".
|
||||
var reg5 = /[z-\w]/; // same as reg3
|
||||
var reg6 = /[\n-\r]/; // from \n (code 10) to \r (code 13).
|
||||
var reg7 = /[\n-z]/; // from \n (code 10) to z (code 122).
|
||||
Reference in New Issue
Block a user