首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Facebook配置文件URL正则表达式

Facebook配置文件URL正则表达式
EN

Stack Overflow用户
提问于 2011-03-05 17:58:10
回答 8查看 49K关注 0票数 26

给定以下Facebook配置文件和页面URL,我的目的是将配置文件ids或用户名提取到第一个匹配位置。

代码语言:javascript
复制
http://www.facebook.com/profile.php?id=123456789  
http://www.facebook.com/someusername  
www.facebook.com/pages/Regular-Expressions/207279373093  

到目前为止,我所拥有的正则表达式如下:

代码语言:javascript
复制
(?:http:\/\/)?(?:www.)?facebook.com\/(?:(?:\w)*#!\/)?(?:pages\/)?(?:[?\w\-]*\/)?(?:profile.php\?id=(\d.*))?([\w\-]*)?

其结果如下:

结果1:

  1. 123456789

结果2:

  1. someusername

结果3:

  1. 207279373093

理想的结果是:

结果1:

  1. 123456789

结果2:

  1. someusername

结果3:

  1. 207279373093

也就是说,我希望配置文件标识符总是在第一个位置返回。

它也将是理想的www.facebook.com/和facebook.com/也不匹配。

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2011-03-06 00:13:04

我推荐Rad软件正则表达式设计器。

此外,这个在线工具是很棒的https://regex101.com/ (尽管大多数人更喜欢http://regexr.com/ )

代码语言:javascript
复制
(?:(?:http|https):\/\/)?(?:www.)?facebook.com\/(?:(?:\w)*#!\/)?(?:pages\/)?(?:[?\w\-]*\/)?(?:profile.php\?id=(?=\d.*))?([\w\-]*)?
票数 24
EN

Stack Overflow用户

发布于 2012-07-17 09:28:55

前一段时间,我做了一个要点,与给定的例子相比,效果很好:

代码语言:javascript
复制
# Matches patterns such as:
#    http://www.facebook.com/my_page_id => my_page_id
#    http://www.facebook.com/#!/my_page_id => my_page_id
#    http://www.facebook.com/pages/Paris-France/Vanity-Url/123456?v=app_555 => 45678
#    http://www.facebook.com/pages/Vanity-Url/45678 => 45678
#    http://www.facebook.com/#!/page_with_1_number => page_with_1_number
#    http://www.facebook.com/bounce_page#!/pages/Vanity-Url/45678 => 45678
#    http://www.facebook.com/bounce_page#!/my_page_id?v=app_166292090072334 => my_page_id

/(?:http:\/\/)?(?:www\.)?facebook\.com\/(?:(?:\w)*#!\/)?(?:pages\/)?(?:[\w\-]*\/)*([\w\-]*)/

获取最新版本:https://gist.github.com/733592

票数 11
EN

Stack Overflow用户

发布于 2017-07-17 16:05:54

只有这个正则表达式对所有FB正确工作:

代码语言:javascript
复制
/(?:https?:\/\/)?(?:www\.)?(?:facebook|fb|m\.facebook)\.(?:com|me)\/(?:(?:\w)*#!\/)?(?:pages\/)?(?:[\w\-]*\/)*([\w\-\.]+)(?:\/)?/i
票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5205652

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档