【问题标题】:Regex extract number before text (various text combinations)正则表达式提取文本前的数字(各种文本组合)
【发布时间】:2013-02-20 23:09:31
【问题描述】:

需要一些关于正则表达式 (php) 的帮助。我有以下文字:

11 小时 30 秒 12 分钟

12 分 11 小时 30 秒

12 分 11 小时 30 秒

我想提取号码。在分钟之前,正则表达式应该适用于所有文本组合。

对此的任何帮助将不胜感激。

谢谢

【问题讨论】:

  • 你的意思是你想捕捉任何时间有数字,空格,然后是“分钟”或“分钟”,还是只在它的情况下在“小时”和“秒”旁边?
  • @derekv 抱歉,如果不清楚,我只想要文本 min 或 minutes 之前的值(但不包括 min 或 minutes)。即只是数字 12。
  • @JohnConde 对不起,你是对的,我应该列出我尝试过的内容,我会确保在我的下一篇文章中这样做。

标签: php regex


【解决方案1】:

这样的简单正则表达式应该可以工作:

/(\d+) (?:mins|minutes)/

分钟数将在第一个捕获组中。

【讨论】:

  • @Dino,您可以使用第一个捕获组使用我的正则表达式仅获取数字。这比您的解决方案更可取,后者不必要地使用前瞻。
  • @dan1111 谢谢,从来不知道捕获组感谢只是在网上研究。感谢您的帮助和建议。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-08-31
  • 1970-01-01
  • 1970-01-01
  • 2022-11-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多