正则表达式常见问题
Q: 工具使用哪种正则引擎?支持 PCRE 吗?
A: 本工具直接使用您浏览器(Chrome, Firefox, Safari)内置的 JavaScript (ECMAScript) 正则引擎。它不支持某些 PCRE 特有的特性(如递归匹配),但对于绝大多数 Web 开发场景(表单验证、数据提取)是完全通用的。这意味着在这里测试通过的正则,可以直接复制到您的 JS/TS 代码中使用。
Q: 支持 Lookbehind (回顾断言) 吗?
A: 支持。 现代浏览器(Chrome 62+, Firefox
78+, Safari 16.4+)都已经支持 JavaScript 的 Lookbehind 语法 (?<=...) 和
(?<!...)。如果您使用的是旧版浏览器,可能会遇到“无效组”的错误。
Q: 为什么 . (点) 匹配不到换行符?
A: 在默认模式下,.
匹配除换行符以外的任何字符。如果您需要匹配包括换行符在内的所有字符,请尝试以下两种方法:
- 使用
[\s\S]代替.。 - 在工具选项中开启 Single Line (s) / DotAll 模式(如果浏览器支持)。
Q: 这个工具能处理多大的文本?
A: 由于匹配在本地运行,性能取决于您的 CPU。对于普通的正则表达式,处理几万行文本通常是秒级的。但请注意避免编写导致 “灾难性回溯” (Catastrophic Backtracking) 的恶性正则,那可能会导致浏览器假死。