1

我有希腊语的 txt 文件,现在我想使用 perl 和 bash 搜索其中的特定单词……这些单词就像 ?a?, t?, e??

我正在搜索英语单词,现在想用希腊语替换它们,但我得到的只是???主要是……对于 Perl:

my %word = map { $_ => 1 } qw/name date birth/;

对于 bash

for X in name date birth
do

有人可以帮帮我吗?

4

1 回答 1

2
#!/usr/bin/perl
use strict;
use warnings;

# Tell Perl your code is encoded using UTF-8.
use utf8;

# Tell Perl input and output is encoded using UTF-8.
use open ':std', ':encoding(UTF-8)';

my @words = qw( καί τό εἰς );

my %words = map { $_ => 1 } @words;
my $pat = join '|', map quotemeta, keys %words;

while (<>) {
   if (/$pat/) {
      print;
   }
}

用法:

script.pl file.in >file.out

笔记:

  • 确保源代码使用 UTF-8 编码,并且您使用use utf8;.
  • 确保使用该use open行并为数据文件指定适当的编码。(如果不是 UTF-8,请更改它。)
于 2013-02-28T22:58:39.420 回答