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 "pmuj" backwards in the box below (case sensitive):

Archive

Show me a random blog post
 2025 

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

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

Archive

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