说明
你前面学习了使用\s
搜索空格(小写的s
)。你也可以搜索除空白或空格之外的所有内容。
使用\S
搜索非空格,这是一个大写的s
。此模式将不匹配空格、回车符、制表符、换页和新行字符。你可以想象它类似于字符类[^ \r\t\f\n\v]
。
var whiteSpace = "Whitespace. Whitespace everywhere!"
var nonSpaceRegex = /\S/g;
whiteSpace.match(nonSpaceRegex).length; // 返回 32
练习
更改正则表达式countNonWhiteSpace
以在字符串中查找多个非空格字符。
- 你的正则表达式应该使用全局标志。
- 你的正则表达式应该在
"Men are from Mars and women are from Venus."
中找到35个非空格。 - 你的正则表达式应该在
"Space: the final frontier."
中找到23个非空格。 - 你的正则表达式应该在
"MindYourPersonalSpace"
中找到21个非空格。
var countNonWhiteSpace = /change/; // Change this line
答案
方法 | 描述 |
正则表达式 | 正则表达式(英语:Regular Expression,在代码中常简写为regex、regexp或RE)使用单个字符串来描述、匹配一系列符合某个句法规则的字符串搜索模式。 |
修饰符 | 描述 |
---|---|
g | 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。 |
元字符 | 描述 |
\S | 匹配任何非空白字符。等价于 [^ \f\n\r\t\v]。 |
var countNonWhiteSpace = /\S/g; // Change this line