提取Facebook链接的最佳选择正则表达式

时间:2017-05-16 13:24:04

标签: php regex

我搜索最好的正则表达式方法以获得最多功能。

我在Google上搜索并将提取Facebook链接。由于Google没有能够使用确切的Google搜索结果1到1运行的搜索API,因此我无法使用该API。

我现在发送一个正常的谷歌请求,提取HTML代码,并找到没有谷歌参数的所有Facebook链接。

你在regex debbuger上找到的例子。

如果可能的话,我只会看到这个链接。

此处搜索示例字符串:      `

 /url?q=https://www.facebook.com/pageid/about&sa=U&ved=0ahUKEwi27NeDvfTTAhWBfywKHbuDDS4QjBAIHDAB&usg=AFQjCNH7T2JEP5DzGpiiwT_pMt2oGJ10ow

 /url?q=https://www.facebook.com/pageid/%3Fpnref%3Dlhc&sa=U&ved=0ahUKEwiWv8S6vfTTAhUEBiwKHW04AH8Q_BcIyQQoATBu&usg=AFQjCNEZIUb1yqqYtzjPfDEVi4GPHDY5FQ

 /url?q=https://www.facebook.com/pageid%3Fpnref%3Dlhc&sa=U&ved=0ahUKEwiWv8S6vfTTAhUEBiwKHW04AH8Q_BcIyQQoATBu&usg=AFQjCNEZIUb1yqqYtzjPfDEVi4GPHDY5FQ

/url?q=https://www.facebook.com/name-name-585606818284844/%3Fpnref%3Dlhc&sa=U&ved=0ahUKEwiWv8S6vfTTAhUEBiwKHW04AH8Q_BcIyQQoATBu&usg=AFQjCNEZIUb1yqqYtzjPfDEVi4GPHDY5FQ

/url?q=https://www.facebook.com/name-name-585606818284844%3Fpnref%3Dlhc&sa=U&ved=0ahUKEwiWv8S6vfTTAhUEBiwKHW04AH8Q_BcIyQQoATBu&usg=AFQjCNEZIUb1yqqYtzjPfDEVi4GPHDY5FQ`

这是我的正则表达式,但不适用于所有选项。正则表达式调试器:

https://regex101.com/r/LcYz8c/8

2 个答案:

答案 0 :(得分:1)

类似的东西:

<击>&#34; Q =(HTTPS:?//.* facebook.com/)derName - /&#34;

 "q=(https?://.*?facebook.com/)derName(?:%[^%]*%..|[-/])?([^&]‌​+)"

可能就是你要找的东西。从我在你的例子中看到的,它看起来像你想要的: 从http到域名之后的所有内容。然后跳过derName,然后抓住所有内容到下一个&amp ;.所以这将使用2个捕获组。希望有所帮助!

答案 1 :(得分:0)

试试这个:

q=(https:\/\/www.facebook.com.*?)&

https://regex101.com/r/LcYz8c/11