1
我有一個帶有叢林字符串的文件。幾行內容如下:如何從文件的每一行中提取具有特殊字符的特定字符串
2*H[0, 3, y]*Log[1 - z] - 2*H[2, 3, y]*Log[1 - z] +
6*H[2, 2, 0, y] + 6*H[2, 2, 2, y] - 48*Log[-Q2] + 12*zeta2*Log[-Q2] +
(-107 + 12*N^2*(-1 + N^2))*z^2))*(H[0, 1, 0, y] + H[0, 1, 0, z] + ...
我想找到的
H[*,*,*] or H[*,*,*,*]
不同的獨特組合中的每一行的到來。因此我也必須搜索包含特殊字符的字符串。有什麼辦法可以在shell中執行?
嗨@anubhava ..謝謝。它開箱即用。但有沒有辦法把它放在bash中作爲任何一般字符串的一些函數(比如這裏的「H」)。 類似 function test(){awk -v RS =「$ @ \\ [[^]] * \\]」'RT &&!seen [RT] ++ {print RT}'$ @;} –
對不起,我沒有得到它的工作。 是否有可能把你的答案放入bashrc中,以便我可以將它用於任何字符串和文件。我試過類似 函數myfunc(){awk -v RS ='H \\ [[^]] * \\'''RT &&!seen [RT] ++ {print RT}'$ @;} 所以我運行爲:myfunc文件,它會給出正確的結果。但我也想爲「H」提供快速輸入,以便它可以用於任何常規字符串。 –
'.bashrc'裏面有這樣一個函數:'myfunc(){awk -v RS =「$ 1」'\\ [[^]] * \\]''RT &&!seen [RT] ++ {print RT}'; }'然後把它稱爲'cat file | myfunc'H'' – anubhava