a001153c8b
## Bug - [ ] Related issues linked using `fixes #number` - [ ] Integration tests added - [ ] Errors have helpful link attached, see `contributing.md` ## Feature - [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR. - [ ] Related issues linked using `fixes #number` - [ ] Integration tests added - [ ] Documentation added - [ ] Telemetry added. In case of a feature if it's used or not. - [ ] Errors have helpful link attached, see `contributing.md` ## Documentation / Examples - [x] Make sure the linting passes by running `yarn lint`
11 lines
427 B
TypeScript
11 lines
427 B
TypeScript
// regexp is based on https://github.com/sindresorhus/escape-string-regexp
|
|
const reHasRegExp = /[|\\{}()[\]^$+*?.-]/
|
|
const reReplaceRegExp = /[|\\{}()[\]^$+*?.-]/g
|
|
|
|
export function escapeStringRegexp(str: string) {
|
|
// see also: https://github.com/lodash/lodash/blob/2da024c3b4f9947a48517639de7560457cd4ec6c/escapeRegExp.js#L23
|
|
if (reHasRegExp.test(str)) {
|
|
return str.replace(reReplaceRegExp, '\\$&')
|
|
}
|
|
return str
|
|
}
|