我有一个 CSV 文件,我想搜索一些姓名。分隔符是“;”。 如果我有一些同音异义词(当我搜索名字时),那么我会搜索姓氏,直到找到那个人。 我如何使用正则表达式?
这是文件:
xadamk00;Adamkova;Eva;FIT
xaltri01;Altrichter;Jan;FIT
xantol00;Antolik;Pavel;FIT
xarlet00;Arlet;Filip;FIT
xaronl00;Aron;Lukas;FIT
xbacka00;Backa;Pavel;FIT
xbahur00;Bahurek;Tomas;FIT
xbalha01;Balharova;Lucie;FIT
xbalic00;Balicki;Zdenek;FIT
xbamba01;Bambas;Tomas;FIT
文件结构:
login;surname;name;faculty
最佳答案
我不知道你为什么用“c”标记你的问题,但从标题来看,你想在 Linux 下使用它,所以我猜 bash/awk 应该没问题?!
如果是这样:假设您的数据文件是“test.txt”,并且您想要 Zdenek Balicki 的条目,请在 bash/awk 中执行以下操作:
awk -F ';' '$2 == "Balicki" && $3 == "Zdenek" { print $0 }' test.txt
这将打印
xbalic00;Balicki;Zdenek;FIT
我希望这能回答您的问题。如果不是,请详细说明“Regex Linux”的含义。
关于c - 正则表达式 Linux 和 CSV 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27154655/