3

大きなxml ファイルでキーワードを検索し、その前の単語、キーワード、および後の単語を返す単純なスクリプトを Windows で実行する必要があります。

例: 「コンテキストでキーワードを抽出するにはどうすればよいですか」

私はキーワードを含む各行とその前後の行を返すのに十分な知識を持つ初心者ですが、必要な個々の単語を取得することに困惑しています

誰にも賢いアイデアはありますか?

4

2 に答える 2

2

1 つの方法を次に示します。

#!/usr/bin/perl

use 5.12.0;
my $keyword = 'keywords';

while (<DATA>)
{
    say for /\b(\S+\s+\b\Q$keyword\E[[:punct:]]*\s+\S+)\b/g;
}

__END__
How can I extract keywords in context, even if there are many keywords to
extract? So many keywords, no idea how to deal with them.
于 2011-10-06T17:30:18.183 に答える
0

grep -o十分です:

grep -Po '(\S+\s)?keywords(\s\S+)?' << END
How can I extract keywords in context
How can I extract keywords
keywords in context
END

戻り値

extract keywords in
extract keywords
keywords in
于 2011-10-06T17:55:24.593 に答える