Turns out that having two "|" characters in a TPM template triggers the prefix and suffix processing. This is arguably a bug, but it isn't one I am going to try to fix.
Use
GPM instead. It makes no assumptions about the meaning of | and {}
Code:
program:
re(field('publisher'),' (Media|Publishing - ebooks Account|Press)$','')