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 <email@example.com>
So I changed & simplified my regexp rule from this:
to just this line:
if /^To: <firstname.lastname@example.org>/
/^To: <email@example.com>/ PREPEND Reply-To: firstname.lastname@example.org
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: .*email@example.com.*/ PREPEND Reply-To: firstname.lastname@example.org
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.