第5课:匹配字符范围

我们刚刚学习了如何创建一个匹配或排除特定字符的正则表达式,但如果我们想匹配一组连续范围内的字符呢?难道只能一个个地列出来吗?

幸运的是,当使用方括号语法时,我们可以使用连字符(-)来表示一个字符范围,这是一种简写方式。例如,正则表达式 [0-6] 只会匹配从 0 到 6 的任何一个数字字符,不会匹配其他内容。同样地,[^n-p] 会匹配除了 n 到 p 的字母以外的任意一个字符。

你也可以在一个方括号中同时使用多个字符范围,也可以混合添加单个字符。比如常用的源字符 \w,就等价于 [A-Za-z0-9_],它常被用来匹配英文文本中的字母、数字或下划线。类似于 \d 和 \D, 源字符 \W 可以用来排除所有的字母、数字和下划线。

在下面的练习中,请注意“匹配行”和“跳过行”都有明确的字符模式。你需要使用方括号表示法,分别为每一行中的每个字符创建匹配或排除的规则。请特别注意:正则表达式是区分大小写的,小写字母 a-z 和大写字母 A-Z 匹配的范围是不同的。

练习 5: 匹配字符范围
Task Text  
匹配 Ana To be completed
匹配 Bob To be completed
匹配 Cpc To be completed
跳过 aax To be completed
跳过 bby To be completed
跳过 ccz To be completed
提示

所有字符都是连续的,因此你可以在正则表达式中使用不同的范围,比如 [A-C][n-p][a-c],来只匹配前面三行。

解决上面的问题以继续到, 或者可以参考答案