【问题标题】:Can someone give me the rundown of this Javascript regular expression?有人可以给我这个 Javascript 正则表达式的概要吗?
【发布时间】:2016-06-28 00:11:40
【问题描述】:
str.replace(/[\W_]/g, '').toLowerCase();

我知道字符串正在被转换为小写,但正则表达式到底在做什么?我知道

\W

匹配任何不是单词字符的字符,但下划线和引号有问题。

【问题讨论】:

  • 它匹配所有出现的非单词(\W)字符或_下划线的出现(查看/g-flag),并在使用小写之前替换为空字符串''
  • 引号只是一个普通的 Javascript 字符串文字。 .replace() 的第二个参数是字符串的匹配部分被替换为什么。

标签: javascript regex


【解决方案1】:

正则表达式正在删除所有非单词和下划线字符。所以如果字符串是:

Now is-the_time:for 10+/+good__Men

.replace() 的结果将是:

Nowisthetimefor10goodMen

正则表达式中需要下划线,因为单词字符是字母、数字和下划线,因此 \W 本身不会删除下划线。

引号是每次出现正则表达式时都被替换的空字符串。

【讨论】:

  • 谢谢!帮了大忙。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-14
  • 2011-05-27
  • 2014-03-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多