1. You could use a tile generator to make the tile pattern. Use the random options under color to get various shades of gray.
2. blend pattern one and two, using a blend node. Plug the tile pattern into the mask of the blend node.
3. insert a node between the tile pattern and the mask to isolate part of the greyscale pattern. I'd use a node like "historgram select".
4. The main issue here is -> Patterns with gradients are problematic for generating a mask, so for the tile generator pick square instead of brick, then scale the pattern (under the size options) to create the grout area.