模块 1 · 第 2 课(共 4)课程中的2/32~10 min
模块课程(2/4)
基本类:\d \w \s
除了文字字符之外,正则表达式还为您提供预定义的类:快捷方式 对于“任何数字”,“任何单词字符”,“任何空格”。他们是第一批 迈向真正有用的模式。
| 班级 | 比赛 |
|---|---|
\d | 数字 (0-9) |
\w | 单词字符 (A-Za-z0-9_) |
\s | A 空白(空格、制表符、换行符等) |
\D | 不是数字 |
\W | 不是单词字符 |
\S | 不是 空格 |
每个都匹配一个字符。匹配“一个或多个字符”
您需要量词(+,在模块 2 中),但我们将立即使用 +
因为“找到我所有的数字”太有用了,不能等待。
Code
Pattern: \d+
Sample: Ho 3 mele, 12 pere e 100 prugne.
^ ^^ ^^^\d+ 表示 一个或多个连续数字:它匹配 3、12 和
100 作为三个单独的匹配(带有 g 标志)。
\w:单词字符
\w 相当于 [A-Za-z0-9_] (ASCII 字母、数字、下划线)。它
不包含重音符号、希腊字母或表情符号:对于那些您需要 Unicode 的人
属性转义(\p{L},模块 5)。
深入研究基本类和否定
预定义的类 \\d、\\w、\\s 可加快编码速度。大写版本(\\D、\\W、\\S)否定该集合。例如, \\S+ 捕获任何不含空格的文本块(例如包括标点符号的整个单词)。
引擎通过匹配标准空格以及制表符 (\\t) 和换行符(\\n 或 \\r)来处理 \\s。
尝试一下
锻炼#regex.m1.l2.e1
尝试:0加载中...
从文本中提取每个连续数字(数字)序列。将“\\d”类与“+”量词一起使用。
正在加载编辑器...
显示提示
\\d+ 捕获一位或多位数字。使用 g 标志,您可以收集每场比赛。
3 次尝试后可用的解决方案
复习练习
锻炼#regex.m1.l2.e2
尝试:0加载中...
查找文本中的每个“单词”:单词字符的连续序列 (`\\w+`)。
正在加载编辑器...
显示提示
\\w+ 匹配字母/数字/下划线的序列。标点符号被跳过。
3 次尝试后可用的解决方案
额外的挑战
锻炼#regex.m1.l2.e3
尝试:0加载中...
Find all sequences of one or more consecutive whitespace characters in the text (including spaces, tabs, and newlines).
正在加载编辑器...
显示提示
使用 \\s 类和 + 量词来捕获连续的空白序列。
3 次尝试后可用的解决方案