regs
v0.3.0
Published
Useful regular expressions for JavaScript
Downloads
19
Maintainers
Readme
regs
Useful regular expressions for JavaScript
Install
npm install --save regs
Usage
Node
const regs = require('regs');
regs.email().test('[email protected]');
//=> true
regs.yeoman().exec('<% var1 %>')[1]
//=> 'var1'
Web
<script src="https://rawgit.com/dawsonbotsford/regs/master/bundle.js"></script>
<script>
alert(regs.trim().exec(' var1 ')[1]);
//=> 'var1'
</script>
Supported regexp types
- yeoman (
regs.yeoman()
) - trim (
regs.trim()
) - email (
regs.email()
) - githubIssue (
regs.githubIssue()
) - markdownHeader (
regs.markdownHeader()
)
API
Each function call returns a
RegExp object
which can then operate on/with.Each function call supports (optionally) the official RegExp flags which alter behavior of the search. (ex: 'g' for global or 'i' to ignore case)
regs.yeoman([RegExpFlags])
Capture text between <% %>
or <%= %>
.
1
capture group - the value between delimeters.
Example:
regs.yeoman().exec('<% capture this %>')[1];
//=> 'capture this'
regs.trim([RegExpFlags])
Capture text without surrounding spaces.
1
capture group - the value between starting and ending spaces.
Example:
regs.trim().exec(' var1 ')[1];
//=> 'var1'
regs.email([RegExpFlags])
Capture all three parts of an email address. Example:
3
capture groups -
- Name (before
@
) - Domain body (between
@
and.
) - Domain suffix (
com
,io
, etc.)
Example:
// Simple validation
regs.email().test('[email protected]');
//=> true
// Capture all parts
regs.email().exec('[email protected]');
//=> [ '[email protected]', 'hi', 'me', 'io', index: 0, input: '[email protected]' ]
regs.githubIssue([RegExpFlags])
Capture number following a pound (GitHub issue reference)
1
capture group - The numeric value of the issue
Example:
regs.githubIssue().exec('#98')[1];
//=> '98'
regs.markdownHeader(headerNumber [, RegExpFlags])
Capture text following a markdown header pound (#
)
1
capture group - Text following the header
headerNumber
examples:
- An
h1
in markdown is# <text>
, and theheaderNumber
should be set to 1 - An
h3
in markdown is### <text>
, and theheaderNumber
should be set to 3
Example:
regs.markdownHeader(1).exec('# my header 1')[1];
//=> 'my header 1'
regs.markdownHeader(4).exec('#### my header 4')[1];
//=> 'my header 4'
Similar
License
MIT © Dawson Botsford