我想查找一行文本中減號後面跟隨一位數字的所有實例。這些數字是用逗號分隔的,但也可以在該行的末尾對方括號內的換行符進行縮放(使用正則表達式)[]
的text.txt包含
hx,-7,u,-9,u,-8
(有一個在後面的新行)
我運行此命令
egrep -o ',[\-][0-9][\n,]' text.txt
並獲得
,-7,
,-9,
但我想
,-7,
,-9,
,-8
編輯: 喜歡的東西
hx,-7,u/-9,u,-8
仍應產生
,-7,
,-9,
,-8
而且使用
egrep -o ',[\-](1|2)?[0-9XY][\,$]' text.txt
對此不起作用
你可以改變你的最後一個字符類'[^ 0-9]' – rgoliveira
在'grep'中,使用'$'錨來結束行就足夠了。 * nix中的文本文件使用'\ n'來終止一行。試試'egrep -o',[\ - ] [0-9](,| $)'text.txt'。 – alvits
@alvits謝謝,這不是在我的問題,但實際上有更多的選擇,不僅僅是「,」或\ n數字也可以通過「/」字符繼承。所以我需要像egrep -o',[\ - ](1 | 2)?[0-9XY] [\ /,$]'text.txt,但這不適用於「$」 – Jacob