模块 5 · 第 1 课(共 4)课程中的17/32~8 min
模块课程(1/4)
字符集:`[abc]`
当像 \d 或 \w 这样的预定义类不够用时,您可以定义一个
自定义字符集带有方括号[...]。括号内,
每个字符都是一个替代字符:正则表达式匹配任何一个的一个
列出的元素。
Code
Pattern: [aeiou]
Sample: ciao mondo
^ ^^ ^^每个元音都是独立的匹配。括号匹配恰好一个字符
(除非量化): [aeiou]+ 匹配连续的元音序列。
括号内的特殊字符
在 [...] 内部,大多数元字符失去其特殊含义:
[.]内的.匹配文字点(不需要转义)。*、+、?、(、)、{、}是文字。\]^仍然是特殊的,必须转义或小心定位。
Code
Pattern: [.,;:]
Match: any punctuation mark among dot, comma, semicolon, colon.方括号内的特殊字符
大多数正则表达式元字符(.、*、+、? 等)在括号内会失去其特殊含义,并被视为文字字符。只有开头的破折号 -、插入符号 ^ 和反斜杠 \\ 保留操作含义。
尝试一下
锻炼#regex.m5.l1.e1
尝试:0加载中...
逐一查找文本中的每个元音(a、e、i、o、u,包括大写)。
正在加载编辑器...
显示提示
在括号内添加大写元音,或使用 i 标志。
3 次尝试后可用的解决方案
复习练习
锻炼#regex.m5.l1.e2
尝试:0加载中...
查找标点符号:点、逗号、分号、冒号、感叹号、问号。
正在加载编辑器...
显示提示
[.,;:!?] 内的所有字符都是原义字符,不需要转义。
3 次尝试后可用的解决方案
额外的挑战
锻炼#regex.m5.l1.e3
尝试:0加载中...
查找文本中所有意大利重音元音 (`àèéìòù`)。
正在加载编辑器...
显示提示
列出方括号内的重音字母。
3 次尝试后可用的解决方案