API Documentation for JSVerbalExpressions.
View the Project on GitHub 
 VerbalExpressions/JSVerbalExpressions
VerEx • VerbalExpression
                addModifierManually add a regex modifier (flag).
| Parameter | Expected type | Description | 
|---|---|---|
value | 
      String | 
      Modifier to add | 
let expr = VerEx()
console.log(expr.flags); // => 'gm'
expr = expr.addModifier('i');
console.log(expr.flags); // => 'gim'
removeModifierManually remove a regex modifier (flag).
| Parameter | Expected type | Description | 
|---|---|---|
value | 
      String | 
      Modifier to remove | 
let expr = VerEx();
console.log(expr.flags); // => 'gm'
expr = expr.removeModifier('m');
console.log(expr.flags); // => 'g'
withAnyCaseControl case-insensitive matching. Equivalent to adding or removing the i modifier.
| Parameter | Expected type | Description | 
|---|---|---|
enable (defaults to true) | 
      boolean | 
      Whether to enable this behavior | 
const hexColorCode = VerEx()
    .find('#')
    .range('0', '9', 'a', 'f')
    .repeatPrevious(6)
    .withAnyCase();
console.log(hexColorCode.test('#93afee')); // => true
hexColorCode.lastIndex = 0;
console.log(hexColorCode.test('#93AFEE')); // => true
stopAtFirstControl global matching. Enabling would cause the expression to not look for matches beyond the first match. Equivalent to removing or adding the g modifier. Global matching is enabled by default.
| Parameter | Expected type | Description | 
|---|---|---|
enable (defaults to true) | 
      boolean | 
      Whether to enable this behavior | 
searchOneLineControl multi-line matching. Enabling would cause the expression to not look for matches beyond the first line. Equivalent to removing or adding the m modifier. Multi-line matching is enabled by default.
| Parameter | Expected type | Description | 
|---|---|---|
enable (defaults to true) | 
      boolean | 
      Whether to enable this behavior | 
let findFoo = VerEx().startOfLine().find('foo').endOfLine();
console.log(findFoo.test('foo\nfoo\nfoo')); // => true
findFoo = findFoo.searchOneLine();
console.log(findFoo.test('foo\nfoo\nfoo')); // => false
repeatPreviousRepeat the previous item exactly count times.
| Parameter | Expected type | Description | 
|---|---|---|
count | 
      Number | 
      Number of times to repeat the previous item | 
const expr = VerEx()
    .startOfLine()
    .find('foo')
    .repeatPrevious(2)
    .endOfLine();
console.log(expr.test('foofoo')); // => true
expr.lastIndex = 0;
console.log(expr.test('foofoofoo')); // => false
Repeat the previous item between mix and max (inclusive) times.
| Parameter | Expected type | Description | 
|---|---|---|
min | 
      Number | 
      Minimum number of times to repeat the previous item | 
max | 
      Number | 
      Maximum number of times to repeat the previous item | 
const expr = VerEx()
    .startOfLine()
    .find('foo')
    .repeatPrevious(1, 3)
    .endOfLine();
console.log(expr.test('foo')); // => true
expr.lastIndex = 0;
console.log(expr.test('foofoo')); // => true
expr.lastIndex = 0;
console.log(expr.test('foofoofoo')); // => true
expr.lastIndex = 0;
console.log(expr.test('foofoofoofoo')); // => false