replace-string
    TypeScript icon, indicating that this package has built-in type declarations

    4.0.0 • Public • Published

    replace-string

    Replace all substring matches in a string

    Similar to String#replace(), but supports replacing multiple matches. You could achieve something similar by putting the string in a RegExp constructor with the global flag and passing it to String#replace(), but you would then have to first escape the string anyways.

    With Node.js 16, this package is partly moot as there is now a String#replaceAll method. However, it does not have a caseInsensitive option.

    Install

    $ npm install replace-string
    

    Usage

    import replaceString from 'replace-string';
    
    const string = 'My friend has a 🐑. I want a 🐑 too!';
    
    replaceString(string, '🐑', '🦄');
    //=> 'My friend has a 🦄. I want a 🦄 too!'

    API

    replaceString(string, needle, replacement, options?)

    Returns a new string with all needle matches replaced with replacement.

    string

    Type: string

    The string to work on.

    needle

    Type: string

    The string to match in input.

    replacement

    Type: string | Function

    The replacement for needle matches.

    If a function, it receives the matched substring, the match count, the original input, and the index in which the match happened (as measured from the original input):

    import replaceString from 'replace-string';
    
    replaceString('Foo 🐑 Bar', '🐑', (matchedSubstring, matchCount, input, matchIndex) => `${matchedSubstring}❤️`);
    //=> 'Foo 🐑❤️ Bar'

    options

    Type: object

    fromIndex

    Type: number
    Default: 0

    Index at which to start replacing.

    caseInsensitive

    Type: boolean
    Default: false

    Whether or not substring matching should be case-insensitive.

    Related

    • execall - Find multiple RegExp matches in a string

    Install

    npm i replace-string

    DownloadsWeekly Downloads

    69,844

    Version

    4.0.0

    License

    MIT

    Unpacked Size

    6.52 kB

    Total Files

    5

    Last publish

    Collaborators

    • sindresorhus