首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >创建regex以检查域和URL

创建regex以检查域和URL
EN

Stack Overflow用户
提问于 2016-07-31 12:23:53
回答 2查看 60关注 0票数 0

有人能帮我构建regex以确保字符串以下列之一开头吗?

代码语言:javascript
复制
https://www.youtube.com
https://www.youtube.be
http://www.youtube.com
http://www.youtube.be
https://youtube.com
https://youtube.be
http://youtube.com
http://youtube.be
www.youtube.com
www.youtube.be
youtube.com
youtube.be

我正在PHP上工作,它允许人们将YouTube视频添加到网页中,我只需要确保用户添加的链接是适当的,并且也是一个有效的URL。这应该足够安全,以便在用户输入字符串后存储,并在稍后查看时嵌入为YouTube视频。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-07-31 12:25:22

这很简单

代码语言:javascript
复制
^(https?:\/\/)?(www\.)?youtube\.(be|com)

稍作解释:

  • ^ -字符串的开始
  • https? - http具有可选的s
  • :\/\/ - ://
  • (www\.)? -可选www.
  • youtube\. - youtube.
  • (be|com) - becom

如果还想匹配youtu.be,请使用以下命令:

代码语言:javascript
复制
^(https?:\/\/)?(www\.)?(youtube\.(be|com)|youtu\.be)
票数 1
EN

Stack Overflow用户

发布于 2016-07-31 12:45:23

代码语言:javascript
复制
((?:https?:\/\/)?(?:www.)?youtu(?:\.?be)?\.(?:com|be))

包括:

代码语言:javascript
复制
https://www.youtube.com
https://www.youtube.be
http://www.youtube.com
http://www.youtube.be
https://youtube.com
https://youtube.be
http://youtube.com
http://youtube.be
www.youtube.com
www.youtube.be
youtube.com
youtube.be
youtu.be
www.youtu.be
http://www.youtu.be
https://www.youtu.be
http://youtu.be
https://youtu.be

PHP:

代码语言:javascript
复制
$re = "/((?:https?:\\/\\/)?(?:www.)?youtu(?:\\.?be)?\\.(?:com|be))/"; 
$str = "https://www.youtube.com\nhttps://www.youtube.be\nhttp://www.youtube.com\nhttp://www.youtube.be\nhttps://youtube.com\nhttps://youtube.be\nhttp://youtube.com\nhttp://youtube.be\nwww.youtube.com\nwww.youtube.be\nyoutube.com\nyoutube.be\nyoutu.be\nwww.youtu.be\nhttp://www.youtu.be\nhttps://www.youtu.be\nhttp://youtu.be\nhttps://youtu.be\n\n\nbsadf.fds\n\nyoutube\.(be|com)"; 

preg_match_all($re, $str, $matches);

UPD:是的,妮可是对的,但我会改变的:

代码语言:javascript
复制
((?:https?:\/\/)?(?:www\.)?(?:youtube\.(?:be|com)|youtu\.be))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38683933

复制
相关文章

相似问题

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