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 "sexa" 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

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

Archive

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