regex-repo is a collection of regular expressions. Refer to the regex reference below for a list of the provided REs.
npm i @liquid-labs/regex-repo
import { emailRE } from '@liquid-labs/regex-repo' // ES6
// const { emailRE } = require('@liquid-labs/regex-repo') // cjs
const verified = emailRE.test(userInput)
Each regular expression listed below is paired with an embeddable string named xxxString
. E.g., rgbRE
is paired with rgbREString
. Each RE will only match strings that are the given type and nothing else. I.e., the RE begins with '^' and ends with '$'. The xxxREString
can be used for partial matches, matchAll
s, and used as part of larger expressions. E.g., to find all unique CSS RGB colors used in a style sheet, you might do something like:
import { rgbREString } from '@liquid-labs/regex-repo'
const allColors = cssContent
.matchAll(new RegExp(`[ :](${rgbREString})[; }]`, 'g'))
.map((match) => match[1]) // extract the capture group
.filter((v, i, arr) => i === arr.indexOf(v)) // filter non-unique items
.sort()
- awsS3BucketNameRE: Matches valid S3 bucket name. Note
awsS3BucketNameREString
cannot be used for partial matches. - awsS3TABucketNameRE: Matches S3 Transfer Acceleration compatible S3 bucket name. Note
awsS3TABucketNameREString
cannot be used for partial matches.
- zeroTo100FloatPercentRE: Matches a 0 to 100% float as used in CSS color specifications.
- zeroTo100PercentRE: Matches a 0 to 100% integer as used in CSS color specifications.
- zeroTo1FloatRE: Matches a 0 to 1 float as used in CSS color specifications.
- zeroTo255FloatRE: Matches a 0 to 255 float as used in CSS color specifications.
- zeroTo255RE: Matches a 0 to 255 integer as used in CSS color specifications.
- zeroTo360FloatRE: Matches a 0 to 360 float as used in CSS color specifications.
- zeroTo360RE: Matches a 0 to 360 integer as used in CSS color specifications.
- cssColor3RE: Matches CSS3 'hex, rgb, rgba, hsl, and predefined colors.
- cssColorRE: Matches CSS4 'hex, rgb, rgba, hsl, and predefined colors.
- cssPreColors1RE: Matches CSS1 predefined color names.
- cssPreColors2RE: Matches CSS2 predefined color names.
- cssPreColors3RE: Matches CSS3 predefined color names.
- cssPreColorsRE: Matches CSS4 predefined color names.
- hexColorAlphaRE: Matches hex specified RGBA colors with an alpha channel.
- hexColorNoAlphaRE: Matches hex specified RGB colors with no alpha channel.
- hsl3RE: Matches CSS3 'hsl(...) and hsla(...) deg and percent notation.
- hslRE: Matches CSS4 'hsl(...) and hsla(...) deg, grad, rad, turn and percent notation.
- rgbaFuncRE: Matches CSS3 'rgba(...) using '0...255 and percent (integer) notation.
- rgbFuncRE: Matches CSS1 'rgb(...) using '0...255 and percent (integer) notation.
- rgbRE: Matches CSS4 'rgb(...) and rgba(...) functios using '0...255 and percent (float) notation.
- emailEncodedOrNotRE: Matche a valid email, URL encoded or not.
- emailRE: Matche a valid email.
- usPhoneRE: Matches US phone numbers with optional country code and area code.
- zipCodeRE: Matches 5 or 9 digit US zip codes.
- uuidRE: Matches a UUID.
- jsReservedWordRE: Matches a JS resereved word.
- jsVariableRE: Matches a valid JS variable name.
- npmPackageNameRE: Matches an NPM package name. Provides matching groups 1 (org name, if any) and 2 (package basename).
- floatRE: Matches a float in either plan or scientific format.
- plainFloatRE: Matches a plain (non-scientific notation) float.
- scientificFloatRE: Matches a scientific notation float.
- urlRE: Matches a valid URL.