stdlib-js / stdlib-js/stdlib

Regexp escape error with Regexp option 'u' and dash in string

未关闭
#701 5 条评论 0 个 reaction 已指派 1 人 已被 @Planeshifter 认领 在 GitHub 查看
Bug Documentation wont-fix
主要语言
JavaScript
星标
6k
派生
1.3k
平均合并
1 天 3 小时
30 天内合并 PR
611

描述

### Description

Encountered an error while escaping a string containing a `-` and passing it to `Regexp.new()` with `u` flag enabled

### Related Issues

_No response_

### Questions

_No response_

### Demo

https://codesandbox.io/s/node-playground-forked-edd4wv?file=/src/index.js

### Reproduction

```js
import rescape from "@stdlib/utils-escape-regexp-string";

console.log(new RegExp(rescape("en-US"))); //=> /en\-US/

console.log(new RegExp(rescape("en-US"), "u")); //=> SyntaxError: invalid identity escape in regular expression
```

### Expected Results

`console.log(new RegExp(rescape("en-US"), "u"))` should print `/en-US/`

### Actual Results

`console.log(new RegExp(rescape("en-US"), "u"))` raises an error with a message similar to the following:

```
SyntaxError: Invalid regular expression: /en\-US/: Invalid escape
```

### Version

@stdlib/utils-escape-regexp-string 0.0.9

### Environments

Node.js, Firefox, Chrome

### Browser Version

_No response_

### Node.js / npm Version

16

### Platform

_No response_

### Checklist

- [X] Read and understood the [Code of Conduct](https://github.com/stdlib-js/stdlib/blob/develop/CODE_OF_CONDUCT.md).
- [X] Searched for existing issues and pull requests.

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。