从字符串中检索持续时间(以秒为单位)

时间:2019-08-30 19:04:42

标签: regex python-3.x

使用正则表达式检索模式。

大家好,

我有一个字符串(例如“这是30秒的视频”),我正尝试从字符串中检索持续时间(30s),稍后将在程序的其他部分中使用它。我正在python中使用re库,但似乎无法正常工作。任何帮助将不胜感激。

这是我用来从字符串获取持续时间的代码: def parse_duration(string):     持续时间=无

matching_pattern = "\(([0-9]+)([msh])\)"
s = re.search(matching_pattern, string)

我希望代码能够从字符串中获取30s,但似乎无法做到这一点。

1 个答案:

答案 0 :(得分:1)

只需将您的模式更改为:

matching_pattern = r"\b[0-9]+[msh]\b"

这里是一个例子:

>>> s = re.search(matching_pattern, "this is a 30s video")
>>> s
<re.Match object; span=(10, 13), match='30s'>
>>> s.group(0)
'30s'