我希望我能理解你,我不知道如何在记事本++中做类似的事情,但我建议使用工具q在文本文件上执行SQL选择。
如果你的文件1貌似
a e f g
a e f g
8455 24.508381 8.604702 16.976215
8456 24.508381 8.604702 16.976215
8457 24.508381 8.604702 16.976215
8458 24.508381 8.604702 16.976215
8459 24.508381 8.604702 16.976215
8460 24.508381 8.604702 16.976215
和文件2的样子
a b c d e f g
a b c d e f g
8455 529 8 -0.000000 24.000000 8.000000 16.000000
8456 529 8 -0.000000 24.000000 8.000000 16.000000
8457 529 8 -0.000000 24.000000 8.000000 16.000000
8458 529 8 -0.000000 24.000000 8.000000 16.000000
8459 529 8 -0.000000 24.000000 8.000000 16.000000
8460 529 8 -0.000000 24.000000 8.000000 16.000000
可以使用
q.py -H "SELECT file02.a, file02.b, file02.c, file02.d, file01.e, file01.f, file01.g from ..\q\01.txt file01 JOIN ..\q\02.txt file02 ON file01.a=file02.a">03.txt
得到
a b c d e f g
8455 529 8 -0.000000 24.508381 8.604702 16.976215
8456 529 8 -0.000000 24.508381 8.604702 16.976215
8457 529 8 -0.000000 24.508381 8.604702 16.976215
8458 529 8 -0.000000 24.508381 8.604702 16.976215
8459 529 8 -0.000000 24.508381 8.604702 16.976215
8460 529 8 -0.000000 24.508381 8.604702 16.976215
双头是强制q将值视为字符串的技巧 - 也许有一个我不知道的参数。
你知道如何编程吗?我可能会用一个小的自定义脚本(Javascript或Python)来解决这个问题 – Konstantine
我对python非常陌生,但我认为我可以多解释一下。 –
那么这个想法是打开包含你的坐标的文件,遍历每一行(例如使用for循环),并采取每一行,并使用空格字符拆分它作为分隔符。这将给你一个7值的列表,其中最后3个分别是xyz。然后,我会再次采用该行,并使用该语言的字符串替换函数来相应地替换每个X,Y,Z值。这个解释大部分是算法化的,但我并不熟悉Python来告诉你究竟要运行哪些命令。 – Konstantine