use boost::match_not_bol when not at beginning of line
when capture groups are present, color only capture groups