Ao testar contra essa string:
“… so that’s that… ”
Os itens a seguir devem, mas não coincidem, as aspas de abertura e as reticências e espaços a seguir:
sed "s/\([“‘\"']…\) /\1/g"
No entanto, isso corresponde corretamente as reticências segundo e seguinte espaço e aspas de fechamento:
sed "s/… \([”’\"'.!?]\)/…\1/g"
Se eu dividir o primeiro, tudo funciona bem:
sed -e "s/\(“…\) /\1/g" \
-e "s/\(‘…\) /\1/g" \
-e "s/\(\"…\) /\1/g" \
-e "s/\('…\) /\1/g"
Então, por que não funciona quando é agrupado? Especialmente quando funciona bem com as aspas de fechamento.