第14课:条件语句

正如我们之前提到的,精确性非常重要,这适用于编码、说话,甚至正则表达式。例如,你不会写一个购物清单给别人,上面写着“购买更多 .*”,因为你不知道会得到什么。相反,你会写“购买更多牛奶”或“购买更多面包”,在正则表达式中,我们实际上可以明确地定义这些条件。

具体来说,当使用分组时,可以使用 |逻辑或,也称为管道)来表示不同的字符集。在上面的例子中,我可以写模式“Buy more (milk|bread|juice)”来仅匹配字符串“Buy more milk”、“Buy more bread”或“Buy more juice”。

与普通分组一样,你可以在条件中使用任何字符序列或元字符,例如,([cb]ats*|[dh]ogs?) 将匹配 cats 或 bats,或者 dogs 或 hogs。编写包含许多条件的模式可能难以阅读,因此如果模式变得过于复杂,你应该考虑将它们分成单独的模式。

尝试编写一个条件模式,仅匹配下面带有小毛茸茸生物的行。

练习题14:匹配条件文本
任务 文本  
匹配 我爱猫 To be completed
匹配 我爱狗 To be completed
跳过 我爱日志 To be completed
跳过 我爱齿轮 To be completed
解答

通过使用逻辑或,我们可以使用表达式 我爱 (猫|狗) 来匹配前两行。但是日志和齿轮也很酷。

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