mirror of
https://code.forgejo.org/actions/setup-node.git
synced 2025-05-22 05:54:45 +00:00
.
This commit is contained in:
parent
00c3b50fca
commit
ae5dcb46c8
7331 changed files with 1784502 additions and 0 deletions
65
node_modules/safe-regex/readme.markdown
generated
vendored
Normal file
65
node_modules/safe-regex/readme.markdown
generated
vendored
Normal file
|
@ -0,0 +1,65 @@
|
|||
# safe-regex
|
||||
|
||||
detect potentially
|
||||
[catastrophic](http://regular-expressions.mobi/catastrophic.html)
|
||||
[exponential-time](http://perlgeek.de/blog-en/perl-tips/in-search-of-an-exponetial-regexp.html)
|
||||
regular expressions by limiting the
|
||||
[star height](https://en.wikipedia.org/wiki/Star_height) to 1
|
||||
|
||||
WARNING: This module merely *seems* to work given all the catastrophic regular
|
||||
expressions I could find scouring the internet, but I don't have enough of a
|
||||
background in automata to be absolutely sure that this module will catch all
|
||||
exponential-time cases.
|
||||
|
||||
[](https://ci.testling.com/substack/safe-regex)
|
||||
|
||||
[](http://travis-ci.org/substack/safe-regex)
|
||||
|
||||
# example
|
||||
|
||||
``` js
|
||||
var safe = require('safe-regex');
|
||||
var regex = process.argv.slice(2).join(' ');
|
||||
console.log(safe(regex));
|
||||
```
|
||||
|
||||
```
|
||||
$ node safe.js '(x+x+)+y'
|
||||
false
|
||||
$ node safe.js '(beep|boop)*'
|
||||
true
|
||||
$ node safe.js '(a+){10}'
|
||||
false
|
||||
$ node safe.js '\blocation\s*:[^:\n]+\b(Oakland|San Francisco)\b'
|
||||
true
|
||||
```
|
||||
|
||||
# methods
|
||||
|
||||
``` js
|
||||
var safe = require('safe-regex')
|
||||
```
|
||||
|
||||
## var ok = safe(re, opts={})
|
||||
|
||||
Return a boolean `ok` whether or not the regex `re` is safe and not possibly
|
||||
catastrophic.
|
||||
|
||||
`re` can be a `RegExp` object or just a string.
|
||||
|
||||
If the `re` is a string and is an invalid regex, returns `false`.
|
||||
|
||||
* `opts.limit` - maximum number of allowed repetitions in the entire regex.
|
||||
Default: `25`.
|
||||
|
||||
# install
|
||||
|
||||
With [npm](https://npmjs.org) do:
|
||||
|
||||
```
|
||||
npm install safe-regex
|
||||
```
|
||||
|
||||
# license
|
||||
|
||||
MIT
|
Loading…
Add table
Add a link
Reference in a new issue