gpt4 book ai didi

regex - 合并与另一个文件中的正则表达式匹配的行

转载 作者:行者123 更新时间:2023-12-04 05:52:36 25 4
gpt4 key购买 nike

我正在尝试执行以下操作,但尚未成功。我有两个文件:

header1
data11
data12
data13
header2
data21
data22
data23
header3
data31
data32
data33
header4
data41
data42
data43
...
headerN
dataN1
dataN2
dataN3

另一个是
header1 num11 num12 num13 num14
header2 num21 num22 num23 num24
header5 num51 num52 num53 num54
header8 num81 num82 num83 num84
...

我需要输出一个文件,该文件从文件 2 中选择标题并以以下格式打印出来(使用上面的示例)
header1
data11
num11
num13
data12
data13
header2
data21
num21
num23
data22
data23
header5
data51
num51
num53
data52
data53
...

我希望很清楚:我需要标题(应该被识别为两个文件共有的)、文件 1 的第一行、文件 2 的第二和第四列、文件 1 的其余数据头等。我一直在尝试使用 awk,但我无法从简单的“两个文件单行”中获得我想要的东西:)

编辑:抱歉误导。我不需要单线。我只是说我使用了一些 awk 和 grep one-liners。我想要一些只能工作的东西:) 另外,标题是字母数字的,没有简单的模式。我需要识别整个字符串。

最佳答案

这是我想出的丑陋的一个类轮(在命令行上开发):

while read h n1 n2 n3 n4; do echo $h; sed -n -e "/^$h\$/{" -e n -e p -e q -e '}'  file1 ; echo $n1; echo $n3; sed -n -e "/^$h\$/{" -e n -e n -e p -e n -e p -e q -e '}'  file1 ;  done <file2

我假设对于 file2 中的每个标题 file1中有相应的标题

关于regex - 合并与另一个文件中的正则表达式匹配的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9900467/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com