[英]how to extract particular string with special character from each line of a file
我有一個帶有字符串叢林的文件。 幾行內容如下:
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[*,*,*,*]
進入每一行。 因此,我也必須搜索包含特殊字符的字符串。 有什么辦法可以做殼嗎?
您可以將此gnu awk命令與自定義RS
:
awk -v RS='H\\[[^]]*\\]' 'RT && !seen[RT]++{print RT}' file
H[0, 3, y]
H[2, 3, y]
H[2, 2, 0, y]
H[2, 2, 2, y]
H[0, 1, 0, y]
H[0, 1, 0, z]
正則表達式H\\\\[[^]]*\\\\]
將H[...]
每個實例設置為記錄分隔符。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.