Nourishing Pizza Microservice

    boundary-match

    0.3.0 • Public • Published

    boundary-match NPM version Build Status Dependency Status Coverage percentage

    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 = require('boundary-match');
     
    boundaryMatch('(HotDog)', '(hotdog)', 'i');
    // => [ '(HotDog)', index: 0, input: '(HotDog)' ]
     
    // Q. But Why?
    // A. Because, these fail to work as expected:
     
    '(HotDog)'.match(/\b\(hotdog\)\b/i);
    // => null
    '(HotDog)'.match(new RegExp('\\b\\(hotdog\\)\\b', 'i'));
    // => null
     
    // When matching isn't enough... `replace`
    let matched = boundaryMatch('Gimme a (HotDog)', '(HOTDOG)', 'i');
    boundaryMatch.replace(matched, 'Chili Dog!');
    // => 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
    • #### 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 calling boundaryMatch
    • #### 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

    Install

    npm i boundary-match

    DownloadsWeekly Downloads

    1

    Version

    0.3.0

    License

    ISC

    Unpacked Size

    9.06 kB

    Total Files

    5

    Last publish

    Collaborators

    • buster