boundary-match
Regex string match and replace that honors boundaries for targets prepended and/or appended with non-word characters.
Installation
$ npm install --save boundary-match
Usage
const boundaryMatch = ; ;// => [ '(HotDog)', index: 0, input: '(HotDog)' ] // Q. But Why?// A. Because, these fail to work as expected: '(HotDog)';// => null'(HotDog)';// => null // When matching isn't enough... `replace`let matched = ;boundaryMatch;// => Gimme a Chili Dog!
API
boundaryMatch(string, target[, flags])
If the target
is found in the string
, it returns an Array
containing the entire matched target as the first element; an index
property for the start of the match; and an input
property that contains the entire string
. If there were no matches, null
is returned.
- ####
string
Required
:String
the string to be searched.
- ####
target
Required
:String
the string to be found. Will be escaped usingescape-string-regexp
.
- ####
flags
Optional
:String
can have any combination of the following values:i
: ignore case
boundaryMatch.replace(match, target)
Returns a String
that replaces the found match
results with target
- ####
match
Required
:Array
the result of previously callingboundaryMatch
- ####
target
Required
:String
the string that replaces the found match
TODO
- [] Implement other native
RegExp
flags:g
,u
,m
,y
FYI
License
ISC © Buster Collings