refrf.dev 是什么网站?
refrf.dev 是一个面向正则表达式初学者的实验性在线书籍,书名为《Regular Expressions for Regular Folk》。它用大量可视化示例代替抽象讲解,适合有基本编程经验、但正则表达式基础薄弱或长期靠复制粘贴解决问题的人。如果你要找的是引擎回溯、递归正则等进阶内容,这个站点目前并不覆盖。
内容主题与结构
全书围绕正则表达式的核心概念展开,目录按学习顺序排列:
- Introduction(简介)
- Basics(基础)
- Character Classes(字符类)
- Character Escapes(字符转义)
- Escapes(转义)
- Groups(分组)
- Repetition(重复)
- Alternation(选择)
- Flags(标志)
- Anchors(锚点)
- Lookaround(环视)
- Advanced Examples(进阶示例)
- Next Steps(下一步)
从目录可以看出,它走的是从零起步的路线,把常见语法点逐个拆开,而不是按“速查手册”的方式罗列。
它和常见正则资源的区别
作者在开篇说明中明确提到,这个项目是“largely visual and example-based”(以视觉化和示例驱动为主),与当时能找到的大多数正则资源不同。作者还刻意挑选了一些能暴露常见陷阱的测试用例。
这一点在读者反馈中也有体现。有读者表示“前几页学到的东西比多年从 StackOverflow 复制粘贴正则还多”;另一位读者提到,相比多数工具提供的“猜测—验证”方式,这种结构化讲解更有效;还有读者说,自己更习惯从示例入手,只有当示例让大脑“卡住”时才会去读配套文字。
适合谁看
- 正则表达式初学者:这是作者设定的目标读者。
- 有编程经验的人:书中假定读者具备一定编程基础,不会从头解释编程概念。
- 偏好示例学习的人:如果你看纯文字解释容易走神,这种风格会更友好。
不适合的情况:
- 想深入理解正则引擎的回溯机制。
- 需要递归正则等高级特性。
- 只想找一份语法速查表,而不是按章节学习。
语言与许可
站点提供中文翻译入口,页面上列出的中文外部翻译来自 @ElsaOOo 和 @singagain。作者也欢迎其他语言的翻译,前提是遵守许可条款;翻译可以选择单独发布,也可以提交到站内。
许可方面:
| 内容 | 许可 |
|---|---|
| 章节内容 | CC BY-SA 4.0 |
| 网站源代码 | MIT License |
这意味着章节内容可以共享和改编,但需署名并以相同方式共享;代码部分则允许更宽松的使用。
如何阅读和打印
站点提供单页版本,方便一次性打印或离线阅读。打印时需要注意:
- Firefox:启用“Print Background Colors”。
- Chrome:在“More settings”下启用“Background graphics”。
如果不开启这些选项,书中的背景色相关示例可能无法正确显示。
其他信息
这是一个开源项目,作者明确表示欢迎贡献。页面上还设有 Feedback 区域,收录了来自 Hacker News 等渠道的读者讨论。如果你在学习过程中发现错误或有改进想法,可以按开源项目的方式参与。