首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Regex从字符串中抓取视频尺寸?

Regex从字符串中抓取视频尺寸?
EN

Stack Overflow用户
提问于 2011-07-22 20:17:52
回答 2查看 144关注 0票数 0

我试图从.net输出的字符串中获取视频的尺寸,我试图通过正则表达式获得的尺寸基本上是这样的1080x960 320x264等等。

我已经找到了很多关于这个主题的文章,但这些都不适合我,不幸的是,我不是正则表达式专家,所以我不能编辑他们的代码。我试图编辑但无法工作的代码看起来像这样,如果它能给你任何启示的话;

代码语言:javascript
复制
   Match c = Regex .Match (ffmpegOutputString,"\\s(\\d+)[xX](\\d+)\\s");
   int w=int.Parse ( c.Groups[1].Value );
   int h=int.Parse ( c.Groups[2].Value );

我需要解析的字符串是;

代码语言:javascript
复制
   Video: wmv3 (Main), yuv420p, 360x264, 400 kb/s, PAR 1:1

根据我的基本正则表达式知识,它对我来说似乎还可以,但它不能获取任何东西,即使我给它一个空字符串作为输入,结果也是一样的,c.count是1,值是空字符串。

如有任何帮助,我们不胜感激!谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-07-22 20:30:36

对于需要解析的字符串,360x264后面紧跟着一个逗号。您的正则表达式是"\\s(\\d+)[xX](\\d+)\\s"\\s匹配空格字符,如空格或制表符。尝试从正则表达式中删除尾随的\\s

票数 2
EN

Stack Overflow用户

发布于 2011-07-22 20:31:55

它不匹配的原因是因为开头和结尾的\s。您的解析字符串在前面有一个空格,但在末尾没有,所以它不匹配。

此外,使用( \d )而不是\d会导致单个数字匹配,因此我删除了paren。

尝试使用这个正则表达式:\d+xX\d+

我在RegExLib上测试了它,它是使用正则表达式的一个很好的参考。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6789908

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档