Shell-Script

正則表達式匹配 = 後跟換行符,因此它們都被刪除

  • November 17, 2015

我正在使用 OSX 中 mail.app 消息的原始源內容,但結果它給了我引用的可列印 MIME 電子郵件編碼中的文本。所以我需要刪除所有那些奇怪的字元才能得到正確的 HTML。

這是一個例子:

<p style=3D"margin:1em 0 3px 0;">
<a name=3D"1" style=3D"font-family:Arial, Helvetica, sans-serif;font-size:1=
8px;" href=3D"http://feedproxy.google.com/~r/WwwhatsNew/~3/8BdOd-xRTU4/?utm=
_source=3Dfeedburner&utm_medium=3Demail">Hyundai ya ofrece manuales de =
los coches con Realidad Aumentada</a>
</p>

這裡我有 =CRLF 和 =3D

我知道如何替換所有這些字元 =C3=A1 =C3=A9 =C3=AD =C3=B3 =C3=BA =C3=81 =C3=89 =C3=8D =C3=93 =C3=9A = C3=B1 =C3=91 =3D =f

我只需要刪除這個 =CRLF 或 ‘=’ 後跟一個換行符。

為什麼要重新發明輪子? qprint已經存在:

描述-en:用於引用列印編碼的編碼器和解碼器

Qprint 是一個命令行程序,可以將文件從引用列印編碼 (RFC1521) 編碼或解碼為引用列印編碼 (RFC1521)。它可以處理文本和二進制數據。

首頁:http ://www.fourmilab.ch/webtools/qprint/

樣本輸入:

$ cat nadir.txt 
<p style=3D"margin:1em 0 3px 0;">
<a name=3D"1" style=3D"font-family:Arial, Helvetica, sans-serif;font-size:1=
8px;" href=3D"http://feedproxy.google.com/~r/WwwhatsNew/~3/8BdOd-xRTU4/?utm=
_source=3Dfeedburner&utm_medium=3Demail">Hyundai ya ofrece manuales de =
los coches con Realidad Aumentada</a>
</p>

樣本輸出:

$ qprint -d nadir.txt 
<p style="margin:1em 0 3px 0;">
<a name="1" style="font-family:Arial, Helvetica, sans-serif;font-size:18px;" href="http://feedproxy.google.com/~r/WwwhatsNew/~3/8BdOd-xRTU4/?utm_source=feedburner&utm_medium=email">Hyundai ya ofrece manuales de los coches con Realidad Aumentada</a>
</p>

qprint可用於大多數 linux 發行版的預打包。

還有幾個 perl 模組用於編碼和解碼引用的可列印文本,包括MIME::QuotedPrintPerlIO::via::QuotedPrint. 毫無疑問,快速的 google 搜尋也將顯示用於 python 和其他語言的 QP 庫。

引用自:https://unix.stackexchange.com/questions/243487