c# - 正则表达式从字符串中获取比特率值

标签 c# regex

我在命令行中使用 FFMPEG 来获取 ASP.NET C# 应用程序中文件的媒体信息。我需要从包含 FFMPEG 输出的字符串值中获取比特率值,如下所示:

  Duration: 00:00:02.60, start: 0.000000, bitrate: 517 kb/s
    Stream #0.0(eng): Video: h264, yuv420p, 1024x768, 15.00 tb(r)
    Stream #0.1(eng): Audio: aac, 22050 Hz, mono, s16

所以我想使用正则表达式从比特率:517 kb/s 中获取整数值...我的文件在上下文中的比特率仅达到 1500 左右,所以它需要能够获取 2、3 和 4 位数字的值。

如何实现这一目标?

干杯

最佳答案

这应该可以。

Match match = Regex.Match(ffmpegStr, @"bitrate: (\d+)");

if (match.Success)
{
    Console.WriteLine(match.Groups[1].Value);
}

其中 ffmpegStr 是您的数据。

您可以将 + 替换为 {2,4} 以仅匹配 2 到 4 位数字。


或者您可以使用ffprobe输出机器可读的数据。

关于c# - 正则表达式从字符串中获取比特率值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17487311/

相关文章:

c# - Blazor 找不到类型或命名空间名称 'App'(是否缺少 using 指令或程序集引用?)

c# - 进度条未按预期达到 100%

javascript - 具有预定义开始和结束模式的正则表达式

java - 使用正则表达式解析数组语法

javascript - JQuery Regex - 获取字符串内的数字

ruby-on-rails - 使用正则表达式检测字符串中的*任何*链接?

c# - 在 .NET 3.5 中有效的语句抛出 "error CS0117: ' System.Linq.Dynamic.DynamicExpression' does not contain a definition for 'ParseLamba' "in 4.5

javascript - 传递的 Json 不被 Controller 接受

c# - Crystal Reports 搞乱富文本

PHP file_exist 与正则表达式