1.0.1 • Published 1 year ago

@octopixell/regulax v1.0.1

Weekly downloads
-
License
GPL-3.0
Repository
github
Last release
1 year ago

Regulax

npm (scoped) GitHub Workflow Status Codecov Snyk Vulnerabilities for GitHub Repo GitHub

An easier and more relaxed way of working with regular expressions for pattern matching!

A special thanks to nadav-dav for creating EasyPattern which is the basis for Regulax. This package was created to allow for code changes and a maintainable rewrite to TypeScript.


Installation

Simply run the following command in a terminal of your choosing:

npm install @octopixell/regulax

Example usage

Somne examples of what Regulax can do for you

Basic testing

import { Regulax } from '@octopixell/regulax';

const pattern = new Regulax('{filename}.js');

pattern.test('your-file.pfd'); // false
pattern.test('another-file.js'); // true

Basic matching

import { Regulax } from '@octopixell/regulax';

const pattern = new Regulax('{directory}/{filename}.js');
const result = pattern.match('root/index.js');

// result:
{ 
  directory: 'root', 
  filename: 'index.js' 
}

Wildcard matching

import { Regulax } from '@octopixell/regulax';

const pattern = new Regulax('*.{extension}');
const result = pattern.match('/root/lib/file.exe');

// result:
{ 
  extension: 'exe'
}

Advanced matching

import { Regulax } from '@octopixell/regulax';

const pattern = new Regulax('{*}/{filename}?{*}');
const result = pattern.match('www.site.com/home/hello.js?p=1');

// result:
{ 
  1: 'www.site.com/home', 
  2: 'p=1', 
  filename: 'hello.js'
}
import { Regulax } from '@octopixell/regulax';

const pattern = new Regulax('{event} tomorrow at {time} for {duration}');
const result = pattern.match('UI/UX Meeting tomorrow at 4pm for 30 minutes');

// result:
{ 
  event: 'UI/UX Meeting',
  time: '4pm',
  duration: '30 minutes'
}
1.0.1

1 year ago

1.0.0

1 year ago

0.0.0

1 year ago