<?php
$re = '@(?:#(\$[^.#]+)(?=\.[^#]*#)|\G(?!^))\.([^#.]+)#?@';
$str = '#$test.a.b.c# #$test.a#';
PD9waHAKCiRyZSA9ICdAKD86IyhcJFteLiNdKykoPz1cLlteI10qIyl8XEcoPyFeKSlcLihbXiMuXSspIz9AJzsKJHN0ciA9ICcjJHRlc3QuYS5iLmMjICMkdGVzdC5hIyc7CmVjaG8gcHJlZ19yZXBsYWNlKCRyZSwgJyQxW1wnJDJcJ10nLCAkc3RyKTsK