javascript - 正则表达式范围如何与简写语法一起使用?

标签 javascript regex

我对 JavaScript 正则表达式中的这行代码感到困惑:

.replace(/[^\w- ]+/g,'')

据我了解,它正在尝试对不属于单词字符类的字符执行替换。但它也是一个范围,因此它必须包括其他范围。我认为也许还有空格字符,但在控制台中运行它似乎并没有取代它。

[^\w] 表示不包含以下字符:a-zA-Z0-9_

这里的范围怎么可能?\w- 从什么开始?

最佳答案

\w- 不是字符范围,因为 \w 不是字符。这里的 - 没有特殊含义,因此 [^\w- ] 匹配除单词字符、文字破折号或空格之外的任何内容。

关于javascript - 正则表达式范围如何与简写语法一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24521562/

相关文章:

php - 用异常(exception)替换重复字符

mysql - 在 MySQL 数据库中通过正则表达式选择列的一部分

javascript - 在 JavaScript 中的单个多行字符串中的换行符之前 trim 尾随空格

正则表达式匹配包含单词的文件名,无论大小写

javascript - 页面加载后移动到 div。 "onmouseover"有效,但 "window.onload"无效

javascript - 通过两点之间的长度获取坐标

javascript - 根据IP地址加载某些页面元素

javascript - 下拉菜单切换

javascript - angularjs:在ng-switch中从 Controller 更改父范围

Python 正则表达式 - 贪婪量词并非在所有情况下都有效