我正在拼命尝试使用 sed 从文件中替换某些 unicode 字符(字形)。但是,我对其中一些仍然失败,即来自 unicode 块的那些:
\p{InHigh_Surrogates}: U+D800–U+DB7F
\p{InHigh_Private_Use_Surrogates}: U+DB80–U+DBFF
\p{InLow_Surrogates}: U+DC00–U+DFFF
我试过(在通过 -f 开关加载的 sed 配置文件中):
s/\p{InHigh_Surrogates}/###/ --> no effect at all
s/\\p\{InHigh_Surrogates\}/###_D-NON-UTF8_###/ -> error message 'Invalid content of \{\}'
有人有建议吗?此外,我不一定专注于使用这些块 - 但我也未能尝试定义 \xd800-\xdfff 形式的字符范围。
谢谢,托马斯