gpt4 book ai didi

regex - 从 'system' 命令返回的字符串的编码

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:56:33 24 4
gpt4 key购买 nike

我正在尝试读取从 Linux 机器上的 ffmpeg 返回的一些元数据。我正在使用 system 命令从 Matlab 中执行此操作。我对 regexp 的调用未能找到我要查找的内容(它在 Windows 上运行正常)。我正在解析的行如下所示:

Duration: 06:33:42.17, start: 0.000000, bitrate: 65 kb/s

我正在通过这样的调用解析持续时间:

dur = regexp(w, 'Duration: [[0-9]+:]+.[0-9]+','match');

其中 w 保存调用 ffmpeg 返回的字符串。结果是 dur 为空,这意味着正则表达式无法匹配查询。如果我保存 w 并将其加载到 Windows 机器上,我会看到这个(我截断了该行,但您可以理解):

[0m[0;39m[0m[0;39m[0m[0;39m Duration: [0m[0;39m[0m[0;39m[0m[0;39m06:33:42.17[0m[0;39m[0m[0;39m[0m[0;39m

这让我怀疑一些编码问题。有什么想法吗?

最佳答案

那些看起来像终端控制代码; ANSI 颜色代码更具体。 (请参阅 http://en.wikipedia.org/wiki/ANSI_escape_code#Colors)如果 ffmpeg 有这样的选项,您可能需要考虑传递一个标志或其他东西来抑制它们。 (通常,程序会自动检测 stdout 是否是交互式终端并自行解决)

关于regex - 从 'system' 命令返回的字符串的编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17199991/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com