$re = '/^(?:(\1?+#)\d+)++$/m';
$str = '#12##235
#123
#12##235
#1234##12###368
#1234##12###368####22235#####723356
#123#123#123#123
#
####
##123
#123###456
#123##456##789
##1##2
#1##2##2
#1#2
test ing test #1
1#1
1##1
##1##1
#1##1###1##2#1';
preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);
// Print the entire match result
var_dump($matches);
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for PHP, please visit: http://php.net/manual/en/ref.pcre.php