1

次のようなテキストがあります。

This is some text Z书. This is Zsome more text Z计算机.
This is yet some more Z电脑 text Z.

pattern に一致するすべてのケースを削除する必要がありますZ+(CJK)。ここで(CJK)、連続する CJK 文字の数は任意です。上記のファイルは次のようになります。

This is some text . This is Zsome more text .
This is yet some more  text Z.

このパターンに一致する CJK テキストをすべて削除するにはどうすればよいですか?

4

2 に答える 2

2

GNU sed非ASCII文字のコードを確認するために使用できます。

sed -n l0 file.txt

結果:

This is some text Z\344\271\246. This is Zsome more text Z\350\256\241\347\256\227\346\234\272.$
This is yet some more Z\347\224\265\350\204\221 text Z.$

次に、必要なGNU sed交換を行うために使用できます。私のテストでは、ロケールをPOSIXに設定する必要がありました。

LC_ALL="POSIX" sed -r 's/Z[\o200-\o377]+//g' file.txt

結果:

This is some text . This is Zsome more text .
This is yet some more  text Z.
于 2012-09-16T10:51:45.883 に答える
2

Perl のワンライナーはどうですか?

perl -CSD -pe 's/Z\p{InCJK_Unified_Ideographs}+//g;' inputfile
于 2012-09-16T08:23:09.183 に答える