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 "z" then "e" then "r" then "o" 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

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

Archive

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