Skip to content

Repository files navigation

icon

RegexToolbox.js Build and testPublish to npmnpmnpm

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:

constregex=newRegexBuilder().startGroup().digit().letter().buildRegex();// ERROR: forgot to call endGroup()

To this:

constregex=newRegexBuilder().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:

constregex=newRegexBuilder().group(r=>r.uppercaseLetter()).lowercaseLetter(RegexQuantifier.oneOrMore).buildRegex();constinitial=regex.exec("Mark")[1];// "M"

the captured values for named groups are retrieved like this:

// Get a number using a group of digitsconstregex=newRegexBuilder().namedGroup("initialLetter",r=>r.uppercaseLetter()).lowercaseLetter(RegexQuantifier.oneOrMore).buildRegex();constinitial=regex.exec(input).groups.initialLetter;// "M"

Also for JavaScript developers

iconMimeTypes.js: MIME type constants for your JavaScript projects

RegexToolbox for other languages

iconRegexToolbox for .NET

iconRegexToolbox for Java

iconRegexToolbox for Kotlin


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

About

Regular expression tools for JavaScript developers.

Topics

Resources

Stars

6 stars

Watchers

1 watching

Forks

Releases

Used by

Contributors

Languages