如何匹配(0/\d+)
以外的任何内容:
aaa 0/1 ddd
fff 0/111 fff
38383 0/24 39303 .. 303
在这个例子中,我希望匹配所有内容,但是:
0/1
0/111
0/24
最终目标是清理文本文件并仅在其中保留这些字符串:
0/1
0/111
0/24
答案 0 :(得分:0)
您可以使用sed
:
sed 's/.*\(0\/[0-9]\+\).*/\1/g' input.txt
<强>解释强>
以上命令将0
后跟正斜杠和一个或多个后续数字匹配到捕获组1
。比赛前后的所有其他.*
都被丢弃。 g
表示sed
在模式匹配时应用替换次数,而不仅仅是一次。
<强>输出:强>
0/1
0/111
0/24
答案 1 :(得分:0)
答案 2 :(得分:0)
你不需要删除任何东西,只需匹配即可。
grep -o '0/[0-9]\+' file
示例:
$ echo 'fff0/111fff0/111fff' | grep -o '0/[0-9]\+'
0/111
0/111