This is no ordinary crossword!

Instead of a word or phrase, each clue is a regular expression (or a ‘regex’). To complete the puzzle, find the letter matching both the horizontal and vertical regex for each square.

The Internet has many regex resources, allowing you to learn and practice online – but here are a few pointers to get you started:

Characters in square brackets [LIKETHIS] are 'character classes'. They represent any one of the characters in the box. A caret (^), sometimes called a 'hat' inside a character class [^LIKETHIS] inverts the match. (Must NOT be any of the characters in the box). A number in curly brackets (like {2}) means that the character or pattern immediately before it must occur this number of times. (So A{3} literally means AAA).

Supplied by the National Cyber Security Centre