到目前为止,您学习并编写的正则表达式主要用于匹配文本中的某个片段。在许多实际场景中,这样的模糊匹配可能会带来误判。例如,假设您希望在日志文件中查找包含“success”的行,我们自然希望排除像“错误:操作不成功”这样的内容。这种情况下,仅仅写一个 success
的正则表达式就可能不够精确。
为避免这种误匹配,我们建议您尽量编写更具针对性的表达式,以提升准确度。这时候就可以借助两个非常重要的元字符:^
(称为“尖号”或“脱字符”)和 $
(美元符号)。它们分别用于匹配一行的开头和结尾。例如,表达式 ^success
只会匹配以“success”开头的行,而不会匹配“Error: unsuccessful operation”这样的内容。
请特别注意,尖号 ^
在不同语境中有不同含义:在方括号中(例如 [^...]
)它表示字符排除,而在方括号外部使用时才表示“行的起始”。这在阅读和编写正则表达式时需要格外留意。
现在,请尝试使用这些新的元字符来匹配下面每一行的完整结构。通过合理使用 ^
和 $
,您可以控制匹配是否精确发生在整行的起点和终点。