正则与文本处理指南
正则前后查找:匹配满足上下文条件的文字
使用前后肯定查找,比较捕获组方案,并检查不同正则引擎的兼容性。
查找条件不消耗文本
前查找检查后面的文本,后查找检查前面的文本,条件内容不成为返回命中的一部分。
下面只返回 USD 前面的 10,货币条件参与判断,但结果仍只包含数字。
Input: 10 USD, 20 EUR
Pattern: \d+(?= USD)
Match: 10跨引擎可采用捕获方案
现代 JavaScript 可用肯定后查找表达前缀条件,其他引擎可能拒绝或存在不同限制。
可改为匹配前缀后只取捕获组,提高可移植性,浏览器通过仍需验证后端引擎。
Input: item=42
Lookbehind: (?<=item=)\d+
Capture alternative: item=(\d+)否定条件仍需边界
否定前查找只排除当前位置的局部条件,不会自动排除整个输入任意位置的出现。
分别测试禁用词在开头、中间、结尾和近似词的情况,明确排除范围。
控制条件成本
多个查找条件与含糊量词组合后难以审查,也可能在长输入中变慢,分步检查往往更清晰。
先用短样例,再在限制内测试长的近似命中,本站 Worker 超时保护不等于生产性能认证。