【问题标题】:Parser, regexp match MM:SS + MM:SS format解析器、正则表达式匹配 MM:SS + MM:SS 格式
【发布时间】:2014-08-05 09:18:08
【问题描述】:

我要提取信息

MM:SS +MM:SS '__string____'
time +extra time and the information after it.

每次检测到新模式时,都必须从新行开始。 到目前为止,上述代码以这种方式工作,但它并不匹配所有时间实例。

一旦 MM:SS 结束,加时赛开始 MM:SS + MM:SS

也可以是 120:34 +3:22

idx = regexp(l,'(\d+:\d+|+\d+:\d+)(\D+)*','match');

【问题讨论】:

  • 您需要转义 + 字符以匹配文字。有什么like this?
  • 此模式给出的结果与之前的代码相同,但跳过了很多时间点。我可以在这里分享一个文本文件吗?
  • 它是一个完整的文本文件,我也是堆栈溢出的新手。我认为它无法附加bbc.com/sport/0/football/27990605我已从这里获取内容。 CTRL+A 复制到一个文本文件中,确保捕获所有文本注释。
  • 事实上,'(\d+:\d+)((+\d+:\d+)|(\D+))*' 这也给了我与我之前共享的代码相同的结果。跨度>
  • 非常感谢您的指导。它真的很有帮助。我需要将 MM:SS +MM:SS 'string' 提取到 0:00 'String'。总之,完整的文本评论。我将在我的 txt 文件上对此进行测试,并在必要时尝试进行修改。

标签: regex parsing match


【解决方案1】:

表达式。

^|\s|.*?(\d+:\d+\s\+\d+:\d+).*?|\s|$

它将匹配文本块中任何位置的任何 MM:SS +MM:SS 序列

Demo

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-16
    • 1970-01-01
    相关资源
    最近更新 更多