perl - 返回关键字、之前的单词和之后的单词的 Perl 或 Gawk 脚本?

标签 perl search gawk

我需要一个在 Windows 中运行的简单脚本,用于在大型 xml 文件中搜索关键字,然后返回其前面的单词、关键字以及后面的单词。

例如: “如何在上下文中提取关键字” 我想: “提取关键字

我是一个新手,有足够的知识来返回带有关键字的每行以及之前和之后的,但我很难获取单个单词我需要出去。

大家有什么好主意吗?

最佳答案

这是一种方法:

#!/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.

关于perl - 返回关键字、之前的单词和之后的单词的 Perl 或 Gawk 脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7678117/

相关文章:

Perl:if(列表中的元素)

algorithm - 可以在未加权的图中简化 A* 搜索吗?

mysql - 如何使用 gawk 将 csv 转换为 xml?

linux - awk 模式总是匹配最后一条记录?

linux - 使用 awk 反转字段

arrays - Perl 中的数组赋值

perl - 文件在每一行中添加一个额外的空格

perl - 如何从 Perl 启动路径中带有空格的 Windows 程序?

iOS Swift CNContactPickerViewController 搜索联系人并添加到选择

sql - 如何使用sql关键字 'like'查找加密数据