说明
使用character类,你可以使用[a-z]
搜索字母表中的所有字母。这种character类是足够通用的并且有快捷方式,尽管它还包括一些额外的字符。
JavaScript中与字母表匹配的最接近的character类是\w
。此快捷方式等于[A-Za-z0-9_]
。这个character类匹配大小写字母加数字。注意,这个character类还包括下划线字符( _
)。
var longHand = /[A-Za-z0-9_]+/;
var shortHand = /\w+/;
var numbers = "42";
var varNames = "important_var";
longHand.test(numbers); // 返回true
shortHand.test(numbers); // 返回true
longHand.test(varNames); // 返回true
shortHand.test(varNames); // 返回true
这些快捷character类也被称为shorthand character classes
速写字符类。
练习
使用shorthand character类\w
来计算各种引号和字符串中字母数字的字符的数量。
- 你的正则表达式应该使用全局标志。
- 你的正则表达式应该在
"The five boxing wizards jump quickly."
中找到31个字母数字字符。 - 你的正则表达式应该在
"Pack my box with five dozen liquor jugs."
中找到32个字母数字字符。 - 你的正则表达式应该在
"How vexingly quick daft zebras jump!"
中找到30个字母数字字符。 - 你的正则表达式应该在
"123 456 7890 ABC def GHI jkl MNO pqr STU vwx YZ."
中找到36个字母数字字符。
var text = 'The five boxing wizards jump quickly.';
var alphabetRegexV2 = /change/; // Change this line
var result = text.match(alphabetRegexV2);
答案
方法 | 描述 |
正则表达式 | 正则表达式(英语:Regular Expression,在代码中常简写为regex、regexp或RE)使用单个字符串来描述、匹配一系列符合某个句法规则的字符串搜索模式。 |
match() | 可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。 |
修饰符 | 描述 |
---|---|
g | 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。 |
元字符 | 描述 |
\w | 匹配包括下划线的任何单词字符。等价于'[A-Za-z0-9_]'。 |
var text = 'The five boxing wizards jump quickly.';
var alphabetRegexV2 = /\w/g; // Change this line
var result = text.match(alphabetRegexV2);
result;
运行结果
["T","h","e","f","i","v","e","b","o","x","i","n","g","w","i","z","a","r","d","s","j","u","m","p","q","u","i","c","k","l","y"]