【发布时间】:2018-08-13 18:57:56
【问题描述】:
打破格式为"PT2M19S" 或"PT19S"(YouTube api 视频持续时间)的字符串的最简单方法是什么,以便我最终得到这样的数组?
Array
(
[M] => 2
[S] => 19
)
【问题讨论】:
-
如果没有看到“非常奇怪的循环”,我们都不得不同意它看起来“非常尴尬”。
-
你想要:"PT2M19S" 或 "PT19S" 但实际的字符串是什么?
-
你打算如何处理这些数字?
-
使用这个正则表达式会更好:
(?:([0-9]*)+[M])?([0-9]*)[S]和读取捕获组会给你分开的数字。现在循环,我认为你别无选择 -
@Jay Blanchard - 问题不在于我已经完成的循环。如果是,我会发布它 - 它是一种更简单、更简单的方式将字符串分配到数组中。