2.0.4 • Published 2 years ago

regextoolbox v2.0.4

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
2 years ago

icon

RegexToolbox.js Build and test Publish to npm npm npm

Regular expression tools for JavaScript developers.

Installation

npm i regextoolbox

RegexBuilder

RegexBuilder is a class for building regular expressions in a more human-readable way using a fluent API. It offers a number of benefits over using raw regex syntax in strings:

  • No knowledge of regular expression syntax is required: just use simple, intuitively-named classes and methods.
  • Code is easier to read, understand and maintain.
  • Code is safer and far less prone to regular expression syntax errors and programmer errors.

It is fully documented in the project wiki.

⚠️ Breaking changes in 2.0

Improved group syntax

The grouping methods have been totally overhauled in version 2.0 to make them easier to use and less error-prone.

Go from this:

const regex = new RegexBuilder()
    .startGroup()
    .digit()
    .letter()
    .buildRegex(); // ERROR: forgot to call endGroup()

To this:

const regex = new RegexBuilder()
    .group(r => r
        .digit()
        .letter()
    )
    .buildRegex();

Details of breaking changes:

RemovedReplaced with
startGroup() ... endGroup()group()
startNonCapturingGroup() ... endGroup()nonCapturingGroup()

butAsFewAsPossible is now a getter

Go from this:

RegexQuantifier.oneOrMore.butAsFewAsPossible()

to this:

RegexQuantifier.oneOrMore.butAsFewAsPossible

Also new in 2.0

Support for named groups

Support for named groups has been added. Where the captured values for regular groups are retrieved like this:

const regex = new RegexBuilder()
    .group(r => r
        .uppercaseLetter()
    )
    .lowercaseLetter(RegexQuantifier.oneOrMore)
    .buildRegex();

const initial = regex.exec("Mark")[1]; // "M"

the captured values for named groups are retrieved like this:

// Get a number using a group of digits
const regex = new RegexBuilder()
    .namedGroup("initialLetter", r => r
        .uppercaseLetter()
    )
    .lowercaseLetter(RegexQuantifier.oneOrMore)
    .buildRegex();

const initial = regex.exec(input).groups.initialLetter; // "M"

Also for JavaScript developers

icon MimeTypes.js: MIME type constants for your JavaScript projects

RegexToolbox for other languages

icon RegexToolbox for .NET

icon RegexToolbox for Java

icon RegexToolbox for Kotlin.


RegexToolbox: Now you can be a hero without knowing regular expressions.
2.0.3

2 years ago

2.0.2

2 years ago

2.0.4

2 years ago

2.0.1

2 years ago

2.0.0

2 years ago

1.1.0

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago

0.0.10

2 years ago

0.0.6

2 years ago

0.0.5

2 years ago

0.0.4

2 years ago

0.0.3

2 years ago

0.0.2

2 years ago

0.0.1

2 years ago