知识卡片

贪婪不是最长

普通读书笔记卡 · 1912.a.2

内容

匹配优先量词会先尝试多吃字符,但只要后续表达式能成功,它不会继续寻找全局最长结果。贪婪描述的是尝试顺序,不是最终保证。关联:[[引擎类型决定结果]]。

参考来源

- 位置:第4章《表达式的匹配原理》匹配优先量词部分(源文件:_epub-src/text/part0009_split_004.html) - 结论依据:原文明确指出标准匹配量词的结果并非所有可能中最长的,它们只是尝试匹配尽可能多的字符直到匹配上限,若最终匹配失败会释放已匹配字符,直接支持卡片对贪婪只是尝试顺序而非最终保证最长的论述。 - 原始内容:"标准匹配量词的结果'可能'并非所有可能中最长的,但它们总是尝试匹配尽可能多的字符,直到匹配上限为止……匹配优先组件首先会匹配尽可能多的字符,但为了整个表达式的匹配,它们通常需要'释放'一些字符。"