对文本fi中以制表符分隔的列中的文本进行分类

2024-05-14 20:43:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个类似this的文本文件:

        Education June 2007 Bachelors of Science in
Business Administration ORGANIZATION    ,
University of Phoenix   ORGANIZATION    .

        June 2005 Associate of Arts in
Liberal Arts    ORGANIZATION    ,
Victor Valley Junior College    ORGANIZATION    ,
Victorville LOCATION    ,
CA  LOCATION    .

我想检索分隔前两列的选项卡,所以我使用了以下方法:

cut -f 1-2 input.txt > output.txt

真是太棒了!你知道吗

现在,我想要第二列中有组织的行,第一列中包含特定的单词,即对于每一行,如果第二列表示组织,请检查第一列是否有单词“University”、“School”、“College”等,如果有,请将其写入输出文件。你知道吗

有没有办法通过修改下面的代码或者用python编写一个新的代码来实现这一点?地址:

cut -f 2-3 input.txt > output.txt

输出应如下所示:

University of Phoenix   ORGANIZATION
Victor Valley Junior College    ORGANIZATION

Tags: ofintxtinputlocationcutvictororganization
2条回答
 awk -F"/t" '$1 ~ /University|Business/ && $(NF-1) ~ /ORGANIZATION/' as
Business Administration ORGANIZATION    ,
University of Phoenix   ORGANIZATION    .

如果第一列包含UniversityBusiness并且最后一列包含ORGANIZATION,则打印该行。这里是它的最后一列,但它的第二个最后一列,实际的最后一列是逗号/句号。你知道吗

*这里您可以更改列号以获得所需的结果。这只是awk方式或写入条件。

您可以使用sed

cut -f 1-2 file.txt | sed -n '/(Business|University).*ORGANIZATION/p' > output.txt

这应该匹配包含商业、大学和组织的所有行,并打印它们(p)。你知道吗

相关问题 更多 >

    热门问题