Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何从两个文本文件之间的单个列中找到前三位匹配模式_Python_Regex_Bash_Shell_Awk - Fatal编程技术网

Python 如何从两个文本文件之间的单个列中找到前三位匹配模式

Python 如何从两个文本文件之间的单个列中找到前三位匹配模式,python,regex,bash,shell,awk,Python,Regex,Bash,Shell,Awk,我想在两个文本文件之间匹配第二列($2)的前三位数字(例如:132*****)。谁能给我推荐一下做这件事的剧本吗 输入文件1: 9 73316991 73352391 DEL 99 35401 9 96058269 96059400 DEL 99 1132 9 132186937 132206288 DUP 99 19352 9 138338172 138339132 DEL 99 961 输入文件2: 9 132185894 132209127 DUP 99 23234 9 14

我想在两个文本文件之间匹配第二列($2)的前三位数字(例如:132*****)。谁能给我推荐一下做这件事的剧本吗

输入文件1:

9 73316991 73352391 DEL 99 35401
9 96058269 96059400 DEL 99 1132
9 132186937 132206288 DUP 99 19352
9 138338172 138339132 DEL 99 961
输入文件2:

9 132185894 132209127 DUP 99 23234      
9 140495212 140496044 DEL 99 833 
9 136625162 136626293 DEL 99 1132
输出文件3:

9 132185894 132209127 DUP 99 23234

您可以像这样使用
awk

awk 'FNR==NR{a[substr($2,1,3)];next} substr($2,1,3) in a' file1 file2
9 132185894 132209127 DUP 99 23234

我们不会为你做你的工作。在你的bash中键入
man grep
,看看这是否是你所需要的。非常感谢!。另外,是否可以在五个不同的文件中搜索同一种模式作为输入?这将非常有用。“是否可能?”的答案总是“是”。非常感谢!。另外,是否可以在五个不同的文件中搜索相同类型的模式作为输入?这将非常有用。这是可能的,但您不能通过注释添加新问题。如果答案正确,您可以单击我答案左上角的勾号,将答案标记为已接受。您是否尝试在file1 file2后面再添加3个文件名?
awk '{key=substr($2,1,3)} NR==FNR{a[key];next} key in a' file1 file2