Skip to content

sindresorhus/replace-string

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

19 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

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

About

Replace all substring matches in a string

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors