指南内含 1 场可玩狩猎

正则游戏:在浏览器里练习正则的 8 种好玩方式

每日谜题、填字游戏、正则高尔夫、引导式课程和面试风格的题目:八种在浏览器里免费练习正则表达式的方式,逐一对比。

Regex Hunter 标志

· 阅读约 1 分钟

/oo|ee/

抓住

  • moon
  • tree
  • cool

放过

  • moan
  • tear
  • coal

能在浏览器里玩的最佳正则游戏有 Regex Hunter(每日正则高尔夫谜题,还有练习包和多人竞速)、Regex Crossword(每一行、每一列都是一条正则的填字格)、经典的 Regex Golf 关卡,以及 regexle(每日六边形正则填字)。如果你更想要引导式课程,RegexOne 和 RegexLearn 用小练习讲解语法,HackerRank 和 Codewars 则提供由测试判定的面试风格正则题。这八个都可以免费上手。

Regex Hunter 是我们做的,所以排在第一。其余七个是我们本来就会推荐给朋友的,下面的表格会如实说明每个最适合做什么。

正则游戏是什么样子,看这一局就知道:

可玩狩猎标准杆 5

抓住含有双写元音的词,放过其余的。

目标 · 抓住 0/5

  • moon目标
  • tree目标
  • cool目标
  • seen目标
  • book目标

无辜词 · 误抓 0

  • moan无辜
  • tear无辜
  • coal无辜
  • sent无辜
  • boat无辜

输入正则——棋盘会实时更新。

在沙盒里试试
喜欢吗?每天都有新的狩猎。玩今天的狩猎

01八款一览

形式 每日新谜题 多人 注册 最适合
Regex Hunter 正则高尔夫:抓住一些词,放过另一些 是 是 玩每日狩猎和练习包无需注册 养成每日习惯、与好友或团队比拼
Regex Crossword 用正则作线索的填字格 否 否 可选 学会读懂正则
Regex Golf 经典高尔夫关卡 否 否 否 最初的高尔夫谜题
regexle 六边形正则填字 是 否 否 考验读正则能力的每日谜题
RegexOne 每课配一道练习 否 否 否 零基础新手
RegexLearn 循序渐进的课程 否 否 否 还想要一份速查表的新手
HackerRank Regex 由测试判定的题目 否 否 是 面试准备
Codewars 带正则标签的编程 kata 否 否 是 在真实代码中使用正则

02Regex Hunter:每日正则谜题,像 Wordle 一样

Regex Hunter 每天给所有人同一场狩猎:一组要抓住的词和一组要放过的词。你写一条同时满足两者的正则,得分就是它的长度,所以一旦写对,就开始精简。这就是正则高尔夫,源自 xkcd #1313 的游戏,每天换一局新题,有标准杆要挑战,有连胜要保持。

一天一局不过瘾时:

  • 练习包: 20 个免费练习包,共 117 关,每个包专练一种技巧,从简写字符类到环视和反向引用。没有计时,也没有排行榜。
  • 狩猎赛: 一款多人正则游戏。与好友或同事在实时计时下连闯一组狩猎,可以开房间、组队或 1v1 对决。
  • 社区狩猎: 189 道玩家创作的谜题,每道都有自己的排行榜。你也可以发布自己的谜题。
  • 学院: 9 条课程路线,适合从零开始。

适合: 每天花五分钟,把工作中常写的模式写得更快。

不太适合: 读懂别人写的超长正则。在这里你是写模式;下面的填字游戏才让你读模式。

03Regex Crossword:一格一格读懂正则

Regex Crossword 把正则变成逻辑谜题。每一行、每一列旁边都有一条模式,你要填满格子,让所有行和列都匹配。你从不写正则,而是推敲一条正则表示什么,这是另一种非常有用的技能。

先有一套五道题的教程,然后是若干谜题组和更难的挑战,还有大量玩家创作的谜题。登录是可选的。

适合: 读懂模式,尤其是字符类、分支选择和反向引用。

不太适合: 自己写正则。可以搭配本列表中需要你动手写模式的游戏。

04Regex Golf:经典关卡

Regex Golf 是继 xkcd 漫画之后出现的浏览器游戏。每关有一组要抓住的词和一组要放过的词,每答对一个词加分,每用一个字符扣分。除了经典关卡,还有额外的关卡组,其中有些非常难。

适合: 想玩原版谜题的高尔夫玩家,无需账号,没有多余功能。

不太适合: 新手。它很快就进入深水区,也没有课程或提示。

05regexle:每日六边形填字

regexle 是一个每日谜题:一个六边形格子,三个方向上的每一行都必须匹配印在边上的正则。每天出一道新题,格子大小可以自选。

适合: 考验读而不是写的每日谜题。

不太适合: 快速休息。大格子可能要花不少时间。

06RegexOne:每课配一道练习

RegexOne 与其说是游戏,不如说是一次导览:一系列简短课程,每课介绍一个概念并配一道练习,做完才进入下一课;之后是电话号码、邮箱、日志行和 URL 之类的练习题。

适合: 从没写过正则的人。

不太适合: 打好基础后的练习。题目做完就没有新内容了。

07RegexLearn:循序渐进的课程

RegexLearn 是一门免费开源课程,一小步一小步地从基础讲到进阶主题,另配速查表和在线练习场。

适合: 喜欢系统化课程、想随手开着一份参考资料的新手。

不太适合: 寻求挑战。它是教学,不是谜题。

08HackerRank:面试风格的正则题

HackerRank 有一个正则专区,题目按主题分组(字符类、重复、分组、反向引用、断言),另有篇幅更长的应用题。每道题都由隐藏测试判定,很像编程面试。

适合: 面试准备,以及习惯被看不见的测试打分。

不太适合: 图个乐子。这些是练习题,而且需要账号。

09Codewars:在真实代码中用正则

Codewars 有许多带 Regular Expressions 标签的 kata,按难度分级,可以用你选的语言解答。解出一道后,你可以看别人的解法,这是快速学到技巧的好办法。

适合: 像工作中那样使用正则:写在函数里,配有测试。

不太适合: 专门练正则。有些带标签的 kata 几乎用不到正则。

10该玩哪一个?

  • 刚接触正则: 先学 RegexOne、RegexLearn 或学院,再用每日谜题保持手感。
  • 想养成习惯: 每日狩猎或 regexle。每天几分钟,进步很快。
  • 想更会读模式: Regex Crossword。
  • 面试将至: HackerRank,再加上练习包,其中的关卡大多是你工作中会写的模式:格式、日志行和代码中的标识符。
  • 想和别人一起玩: 狩猎赛,可以和好友、同事或团队一起。

11玩今天的狩猎

玩今天的狩猎 → 每天一道新的正则高尔夫谜题:抓住目标,放过无辜词,力争低于标准杆。免费,在浏览器中玩,无需注册。

刚接触正则高尔夫?阅读正则高尔夫策略:如何打出低于标准杆的成绩。