My fix described above failed when an iPhone user e-mailed to my dist. list and respondents clicking Reply ended up replying to just the sender and not the list.
Looking at his message headers, I found the message sent from an iPhone had an informal name before the email address in the "To: " field:
To: List Nickname <firstname.lastname@example.org>
So I changed & simplified my regexp rule from this:
to just this line:
if /^To: <email@example.com>/
/^To: <firstname.lastname@example.org>/ PREPEND Reply-To: email@example.com
The 'dot-star' matches any number of any characters, and I put it before and after the email address, so it also matches the angle-bracketed email address. That fixed the problem for me.
/^To: .*firstname.lastname@example.org.*/ PREPEND Reply-To: email@example.com
Of course, this would result in unwanted matches for email addresses like:
but my few sites have very few users, so the risk of false matches is low, for me.