小编Ale*_*Flo的帖子

使用awk/sed从一行中提取数字

我有这个字符串:

Stream #0:0: Video: vp6f, yuv420p, 852x478, 1638 kb/s, 25 tbr, 1k tbn, 1k tbc
Run Code Online (Sandbox Code Playgroud)

我想从中提取25出来.我用:

sed -r 's/.+([0-9]{2} tbr).+/\1/'
Run Code Online (Sandbox Code Playgroud)

它返回我需要的东西.

无论如何,如果相反我会遇到一个字符串

Stream #0:0(eng): Video: mpeg4 (Simple Profile) (mp4v / 0x7634706D), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 11981 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 30k tbc
Run Code Online (Sandbox Code Playgroud)

它不会再回归我需要的了.

我尝试了不同的替代方法,因此tbr在两种情况下都返回值,但找不到正确的表达式.

regex linux awk sed

3
推荐指数
1
解决办法
9970
查看次数

标签 统计

awk ×1

linux ×1

regex ×1

sed ×1