Here's the first solution that came to my mind. Nothing tricky or efficient really. Just gets the job done. It uses recursion to search adjacent squares so as to meet the requirement/suggestion to avoid merely doing a linear search of the whole game board (at least, that's what I read into it). This supports boards of arbitrary size and can be configured via constants to support a different maximum number of characters to search for (and specific character to search for). It assumes the board, if provided, is rectangular. http://snipt.org/kmnm (Just noticed I left in a hard-coded regex using the '@' character; otherwise this supports searching for a different character) -- Kendall Gifford