将全角标点字符替换为正常宽度的等效标点字符

Mik*_*ike 5 python unicode bash

file1包含一些\xef\xbc\x9as (即全角),我想将其转换为常规:s (即我们的常规冒号)。我如何在 bash 中执行此操作?也许是一个Python脚本?

\n

tch*_*ist 4

恕我直言,python \xe2\x80\x99t 不是完成这项工作的正确工具;珀尔是:

\n\n
perl -CSAD -i.orig -pe 'tr[\xef\xbc\x9a][:]' file1\n
Run Code Online (Sandbox Code Playgroud)\n\n

或者

\n\n
perl -CSAD -i.orig -pe 'tr[\\x{FF1A}][:]' file1\n
Run Code Online (Sandbox Code Playgroud)\n\n

或者

\n\n
perl -CSAD -i.orig -Mcharnames=:full -pe 'tr[\\N{FULLWIDTH COLON}][:]' file1\n
Run Code Online (Sandbox Code Playgroud)\n\n

或者

\n\n
perl -CSAD -i.orig -Mcharnames=:full -pe 'tr[\\N{FULLWIDTH EXCLAMATION MARK}\\N{FULLWIDTH QUOTATION MARK}\\{FULLWIDTH NUMBER SIGN}\\N{FULLWIDTH DOLLAR SIGN}\\N{FULLWIDTH PERCENT SIGN}\\N{FULLWIDTH AMPERSAND}\\{FULLWIDTH APOSTROPHE}\\N{FULLWIDTH LEFT PARENTHESIS}\\N{FULLWIDTH RIGHT PARENTHESIS}\\N{FULLWIDTH ASTERISK}\\N{FULLWIDTH PLUS SIGN}\\N{FULLWIDTH COMMA}\\N{FULLWIDTH HYPHEN-MINUS}\\N{FULLWIDTH FULL STOP}\\N{FULLWIDTH SOLIDUS}][\\N{EXCLAMATION MARK}\\N{QUOTATION MARK}\\N{NUMBER SIGN}\\N{DOLLAR SIGN}\\N{PERCENT SIGN}\\{AMPERSAND}\\N{APOSTROPHE}\\N{LEFT PARENTHESIS}\\N{RIGHT PARENTHESIS}\\N{ASTERISK}\\N{PLUS SIGN}\\N{COMMA}\\{HYPHEN-MINUS}\\N{FULL STOP}\\N{SOLIDUS}]' file1\n
Run Code Online (Sandbox Code Playgroud)\n