mscroggs.co.uk
mscroggs.co.uk

subscribe

Blog

A regular expression Christmas puzzle

 2024-12-22 
I showed off and part-solved a prototype version of this puzzle with Katie Steckles in the fifteenth Finite Group livestream. You can watch a recording of this stream, and watch our future streams if you sign up to our Patreon.
I clearly haven't already made enough Christmas puzzles this year, so I've made another one. If you've used regular expressions before, head straight to mscroggs.co.uk/regexmas to try the puzzle. If you've not, read on...

What is a regular expression

Regular expressions are strings of characters that can be used in multiple programming languages to validate text. Regular expressions are usually written between two / characters. Between the slashes, characters have the following meaning:

The puzzle

My regular expression Christmas puzzle is shown below. You can either solve it on this page or at mscroggs.co.uk/regexmas using the buttons or your keyboard, or you can download this PDF of the puzzle.
In the grid below, write r, g, b, c, m, y, k, or w in every square so that:
The squares containing an r will be coloured red, those containing a g will be coloured green, those containing a b will be coloured blue, those containing a c will be coloured cyan, those containing an m will be coloured magenta, those containing a y will be coloured yellow, those containing a k will be coloured black, and those containing a w will be left white.
r g b c m y k w
/^w+yw+$/
/^([kw]+)[^kw]\1$/
/^(g|wwwg|gww)+.$/
/^wy?g*y+w+$/
/^((w|gg)(ww|g)){3}$/
/^[wg](w|g)[gw](.)\2+\1{2}$/
/^.g*[^y]$/
/^([gk][gk][gk])\1\1$/
/^yw+kw+y$/
/^w*b(bb)+w*$/
/^(w+)w?(bb?)\2\2\1$/
/^(www|bbb)+$/
/^w+gyw+$/
/^[wg]*y[wg]*$/
/^.*gwg.*gwb.*$/
/^[^g]+g+[^g]+$/
/^y?g+y?g+k?b+$/
/^[w]+g*w[^w]+$/
/^w+g+wg+[^g]+$/
/^w*yw*g+w*$/
/^w*y?g?y?w*$/
                        
(Click on one of these icons to react to this blog post)

You might also enjoy...

Comments

Comments in green were written by me. Comments in blue were not written by me.
 Add a Comment 


I will only use your email address to reply to your comment (if a reply is needed).

Allowed HTML tags: <br> <a> <small> <b> <i> <s> <sup> <sub> <u> <spoiler> <ul> <ol> <li> <logo>
To prove you are not a spam bot, please type "bisect" in the box below (case sensitive):

Archive

Show me a random blog post
 2025 

Mar 2025

How to write a crossnumber

Jan 2025

Christmas (2024) is over
Friendly squares
 2024 
▼ show ▼
 2023 
▼ show ▼
 2022 
▼ show ▼
 2021 
▼ show ▼
 2020 
▼ show ▼
 2019 
▼ show ▼
 2018 
▼ show ▼
 2017 
▼ show ▼
 2016 
▼ show ▼
 2015 
▼ show ▼
 2014 
▼ show ▼
 2013 
▼ show ▼
 2012 
▼ show ▼

Tags

zines gaussian elimination game show probability hats propositional calculus gerry anderson convergence world cup menace games manchester arithmetic christmas hexapawn squares crochet bempp interpolation recursion finite element method reddit hyperbolic surfaces christmas card turtles curvature datasaurus dozen weather station gather town manchester science festival numbers ternary crossnumber inline code matrix multiplication mean chess stirling numbers the aperiodical advent calendar london underground weak imposition runge's phenomenon error bars phd statistics dragon curves london chebyshev royal baby 24 hour maths logic football polynomials tmip logs asteroids bots regular expressions cambridge pizza cutting raspberry pi big internet math-off chalkdust magazine draughts dates friendly squares wave scattering pi golden ratio hannah fry talking maths in public mathsjam matrix of cofactors royal institution geogebra speed oeis databet electromagnetic field pascal's triangle tennis javascript latex errors guest posts triangles fonts dataset coins matrix of minors sport frobel estimation radio 4 bodmas braiding youtube exponential growth correlation sorting light european cup trigonometry mathslogicbot cross stitch php flexagons palindromes pac-man graphs data anscombe's quartet pythagoras probability rugby noughts and crosses numerical analysis wool kings folding tube maps plastic ratio misleading statistics crossnumbers news signorini conditions harriss spiral bubble bobble countdown stickers geometry fence posts a gamut of games graph theory simultaneous equations captain scarlet live stream binary newcastle matrices mathsteroids dinosaurs map projections national lottery fractals platonic solids machine learning pi approximation day martin gardner sobolev spaces golden spiral ucl reuleaux polygons books video games matt parker sound go data visualisation inverse matrices game of life preconditioning final fantasy edinburgh standard deviation rhombicuboctahedron programming nine men's morris puzzles craft accuracy folding paper determinants realhats python logo people maths computational complexity finite group crosswords quadrilaterals approximation boundary element methods

Archive

Show me a random blog post
▼ show ▼
© Matthew Scroggs 2012–2025