Code snippets: FWIW: your #authors_namesinverted column can be better expressed as {authors:'list_re_group($, ' & ', '.', '(^.*$)', '[[$:swap_around_comma()]]')'} or as I would prefer: program: list_re_group($authors, ' & ', '.', '(^.*$)', '{$:swap_around_comma()}') And unless you have a reason to have two columns I would do this to build the inverted comma-separated list directly from the authors column: program: res = ''; for author in $authors separator ' & ': author = swap_around_comma(author); if !res then res = author else res = strcat(res, ', ', author) fi rof