preg 替换推特状态和 http 或 https PHP
preg replace twitter status and http or https PHP
我将从我拥有的开始:
// embed tweet
$embed_tweet = '
<blockquote class="twitter-tweet" data-cards="hidden" data-lang="en">
<a href="https://twitter.com/\4"></a>
</blockquote>
';
$this->post['message'] = preg_replace('#(<a href="http://twitter.com)?/(status/([-|~_0-9A-Za-z]+)|v\/([-|~_0-9A-Za-z]+)&?.*?)">(http://twitter.com)?/(status/([-|~_0-9A-Za-z]+)|v\/([-|~_0-9A-Za-z]+)&?.*?)<\/a>#i', $embed_tweet, $this->post['message']);
// embed vine
$embed_player = '<iframe src="https://vine.co/v/\4/embed/simple" width="480" height="480" frameborder="0"></iframe>';
$this->post['message'] = preg_replace('#(<a href="http://vine.co)?/(embed/([-|~_0-9A-Za-z]+)|v\/([-|~_0-9A-Za-z]+)&?.*?)">(http://vine.co)?/(embed/([-|~_0-9A-Za-z]+)|v\/([-|~_0-9A-Za-z]+)&?.*?)<\/a>#i', $embed_player, $this->post['message']);
我正在努力做到这一点,当用户 post 向 Twitter 状态或 Vine post 添加 link 时,它会自动嵌入 post。
Vine 代码是给我的,我设法更新了它的一部分,只有当它 http
或者我添加了 s
时我才能让它工作,我只能用一种方式或其他,我尝试从它开始工作以使 Twitter 正常运行。
但我不知道如何为 Twitter 嵌入找到合适的 preg_replace
。
一条微博状态link如下:
https://twitter.com/DrCustUmz/status/726561400617840641
因此,如果用户 post 喜欢 link 并且提交了 post,它会变成:
<a href="https://twitter.com/DrCustUmz/status/726561400617840641" taget="_blank">https://twitter.com/DrCustUmz/status/726561400617840641</a>
那么我怎样才能做到这一点,我怎样才能得到我需要的preg_replace
?
另外... \4
行
中的内容
$embed_player = '<iframe src="https://vine.co/v/\4/embed/simple"...
继续学习更多的旅程,这就是我想出的。
// embed tweet
$drc_embed_tweet = '
<blockquote align="center" class="twitter-tweet" data-cards="hidden" data-lang="en">
<a href="https://twitter.com//status/"></a>
</blockquote>
';
$this->post['message'] = preg_replace('~(<a href="https?://twitter.com)/(.*)/status/(.*)">(https?://twitter.com)/(.*)<\/a>~', $drc_embed_tweet, $this->post['message']);
// embed vine
$drc_embed_vine = '<iframe align="center" src="https://vine.co/v/" width="480" height="480" frameborder="0"></iframe>';
$this->post['message'] = preg_replace('~(<a href="https?://vine.co)/v/(.*)">(https?://vine.co)/v/(.*)<\/a>~', $drc_embed_vine, $this->post['message']);
至于数字 </code> 根据我的理解,这是 reg 的一部分。前任。自第二个注册以来被替换。前任。 <code>
是一样的,任何一个数字都可以使用。
我将从我拥有的开始:
// embed tweet
$embed_tweet = '
<blockquote class="twitter-tweet" data-cards="hidden" data-lang="en">
<a href="https://twitter.com/\4"></a>
</blockquote>
';
$this->post['message'] = preg_replace('#(<a href="http://twitter.com)?/(status/([-|~_0-9A-Za-z]+)|v\/([-|~_0-9A-Za-z]+)&?.*?)">(http://twitter.com)?/(status/([-|~_0-9A-Za-z]+)|v\/([-|~_0-9A-Za-z]+)&?.*?)<\/a>#i', $embed_tweet, $this->post['message']);
// embed vine
$embed_player = '<iframe src="https://vine.co/v/\4/embed/simple" width="480" height="480" frameborder="0"></iframe>';
$this->post['message'] = preg_replace('#(<a href="http://vine.co)?/(embed/([-|~_0-9A-Za-z]+)|v\/([-|~_0-9A-Za-z]+)&?.*?)">(http://vine.co)?/(embed/([-|~_0-9A-Za-z]+)|v\/([-|~_0-9A-Za-z]+)&?.*?)<\/a>#i', $embed_player, $this->post['message']);
我正在努力做到这一点,当用户 post 向 Twitter 状态或 Vine post 添加 link 时,它会自动嵌入 post。
Vine 代码是给我的,我设法更新了它的一部分,只有当它 http
或者我添加了 s
时我才能让它工作,我只能用一种方式或其他,我尝试从它开始工作以使 Twitter 正常运行。
但我不知道如何为 Twitter 嵌入找到合适的 preg_replace
。
一条微博状态link如下:
https://twitter.com/DrCustUmz/status/726561400617840641
因此,如果用户 post 喜欢 link 并且提交了 post,它会变成:
<a href="https://twitter.com/DrCustUmz/status/726561400617840641" taget="_blank">https://twitter.com/DrCustUmz/status/726561400617840641</a>
那么我怎样才能做到这一点,我怎样才能得到我需要的preg_replace
?
另外... \4
行
$embed_player = '<iframe src="https://vine.co/v/\4/embed/simple"...
继续学习更多的旅程,这就是我想出的。
// embed tweet
$drc_embed_tweet = '
<blockquote align="center" class="twitter-tweet" data-cards="hidden" data-lang="en">
<a href="https://twitter.com//status/"></a>
</blockquote>
';
$this->post['message'] = preg_replace('~(<a href="https?://twitter.com)/(.*)/status/(.*)">(https?://twitter.com)/(.*)<\/a>~', $drc_embed_tweet, $this->post['message']);
// embed vine
$drc_embed_vine = '<iframe align="center" src="https://vine.co/v/" width="480" height="480" frameborder="0"></iframe>';
$this->post['message'] = preg_replace('~(<a href="https?://vine.co)/v/(.*)">(https?://vine.co)/v/(.*)<\/a>~', $drc_embed_vine, $this->post['message']);
至于数字 </code> 根据我的理解,这是 reg 的一部分。前任。自第二个注册以来被替换。前任。 <code>
是一样的,任何一个数字都可以使用。