【发布时间】:2021-12-22 15:07:51
【问题描述】:
我有一个大型数据集,并且正在尝试使用 awk 对一列 ($14) 进行词形还原,如果它以其中一种模式结尾,我需要删除单词中的 'ing'、'ed'、's'。所以问,问,问毕竟只是“问”。
假设我有这个数据集(我要修改的列是 $2:
onething 这是一个经过多次测试的字符串。 twoed 我想删除以许多模式结尾的单词。 三人组 看书是件好事。这样,预期的输出是:
我测试了多次的东西。 twoed 我想用许多模式删除单词结尾。 三人组读的书我很好。我尝试过使用 awk 来跟踪正则表达式,但没有成功。
awk -F'\t' '{gsub(/\(ing|ed|s\)\b/," ",$2); print}' file.txt
#this replaces some of the words with ing and ed, not all, words ending with s stays the same (which I dont want)
请帮忙,我是 awk 的新手,还在探索它。
【问题讨论】: