第 3 课:匹配特定字符

上一课中的点号元字符非常强大,但有时也过于强大。例如,如果我们正在匹配电话号码,我们不希望将字母“(abc) def-ghij”验证为有效号码!

有一种方法可以使用正则表达式匹配特定字符,方法是在方括号内定义它们。例如,模式[abc]将只匹配单个a、b 或 c 字母,而不会匹配其他任何内容。

下面是几行,我们只想匹配前三个字符串,而不匹配后三个字符串。请注意,如果我们使用点号,我们无法避免匹配后三个字符串,但必须使用上述符号专门定义要匹配的字母。

练习 3:匹配字符
任务 文本  
匹配 can To be completed
匹配 man To be completed
匹配 fan To be completed
skip dan To be completed
skip ran To be completed
skip pan To be completed
解决方案

您可以使用表达式 [cmf]an 仅匹配“can”、“man”和“fan”,而不会匹配任何其他行。正如您将在下一课中看到的,您还可以使用反向表达式 [^drp]an 来匹配任何以“an”结尾且不以“d”、“r”或“p”开头的三个字母的单词。

解决上述任务以继续下一个问题,或阅读解决方案