Are you making a composite custom column (column made from other columns) or are you using search/replace to remove the unwanted stuff?
Your template works fine for me when making a custom column for comments that don't contains newlines. However, it would be better written as
Code:
{comments:re(###.*,)}
If your comments contain newlines (my guess is that there is a newline after the ###) then you should use something like
Code:
{comments:'re($, '(?s)###(.*)', '') '}
The (?s) in the beginning tells the regexp processor that the . character can match newlines.