SED-无法对UTF-8编码的字符执行某些命令
|
我得到一个看起来像这样的文件:
<text top=\"123\" left=\"45\" width=\"50\" height=\"17\" font=\"8\">Måndag</text>
如主题中所述,此文件以utf-8编码。使用此命令时:
cat file | sed \'s_.*top=\"\\([0-9][0-9]*\\)\" left=\"\\([0-9][0-9]*\\)\".*>\\(.*\\)<.*_\\1 \\2 \\3_\'
它永远不会完成执行并且什么也不打印。
但是执行这样的一行:
cat file | sed \'s/å/FOO/\'
给我正确的输出:
<text top=\"123\" left=\"45\" width=\"50\" height=\"17\" font=\"8\">MFOOndag</text>
这是sed中的错误,还是我的正则表达式或我使用它的方式有问题?我想要的是一种简洁的方法,可以在不涉及太多命令的情况下提取顶部,左侧和内容数据。
没有找到相关结果
已邀请:
3 个回复
到街客核
这将允许在您的参数,std流以及您处理的所有文件中使用Unicode。
襄挟款籍
戊袱