我有一个字符串集合。现在我想从可能的Regex或某种方式返回该字符串中的特定值。我不太了解正则表达式如何做这个事情所以请帮助我的家伙。谢谢
以下是字符串示例:
2017-04-20T17:00:19 + 00:00
YT:视频:的 eaLKqoB9Fu0 eaLKqoB9Fu0 UC8butISFwT-Wl7EV0hUK0BQ
可能会有额外的内容,所以我们不得不离开它们。
2017-04-17T17:59:04 + 00:00 2017-04-25T20:06:02 + 00:00
可能会有额外的内容,所以我们不得不离开它们。
YT:视频:的 z_mSgK-6pOQ z_mSgK-6pOQ UC8butISFwT-Wl7EV0hUK0BQ
2017-04-18T15:56:51 + 00:00 2017-04-25T19:56:06 + 00:00
可能会有额外的内容,所以我们不得不离开它们。 可能会有额外的内容,所以我们不得不离开它们。
YT:视频:的 0fy9TCcX8Uc 0fy9TCcX8Uc UC8butISFwT-Wl7EV0hUK0BQ
//可能会有很多这样的内容,所以我们只需要在 yt:video:
之后的ID我希望将值作为具有该字符串特定值的数组
[eaLKqoB9Fu0,z_mSgK-6pOQ,0fy9TCcX8Uc] //等等
我希望你们明白我在寻找什么。
答案 0 :(得分:1)
正则表达式: /yt:video:\K[^\s]+/
1。
/yt:video:\K/
此部分将与yt:video:
匹配,\K
将重置当前匹配。2。
[^\s]+
这将匹配所有直到space
PHP代码
ini_set('display_errors', 1);
$string='2017-04-20T17:00:19+00:00
yt:video:eaLKqoB9Fu0 eaLKqoB9Fu0 UC8butISFwT-Wl7EV0hUK0BQ
there could be extra content so we have to leave them.
2017-04-17T17:59:04+00:00 2017-04-25T20:06:02+00:00
there could be extra content so we have to leave them.
yt:video:z_mSgK-6pOQ z_mSgK-6pOQ UC8butISFwT-Wl7EV0hUK0BQ
2017-04-18T15:56:51+00:00 2017-04-25T19:56:06+00:00
there could be extra content so we have to leave them. there could be extra content so we have to leave them.
yt:video:0fy9TCcX8Uc 0fy9TCcX8Uc UC8butISFwT-Wl7EV0hUK0BQ';
preg_match_all("/yt:video:\K[^\s]+/",$string, $matches);
print_r($matches);
<强>输出:强>
Array
(
[0] => Array
(
[0] => eaLKqoB9Fu0
[1] => z_mSgK-6pOQ
[2] => 0fy9TCcX8Uc
)
)