gpt4 book ai didi

php - 用于验证 facebook 页面 url 的正则表达式

转载 作者:可可西里 更新时间:2023-11-01 13:30:48 25 4
gpt4 key购买 nike

我需要验证 facebook 页面 url,它不应该考虑给定的 http/https 或 www?

我的意思是应该接受或有效:

www.facebook.com/ABCDE
facebook.com/ABCDE
http://www.facebook.com/ABCDE
https://www.facebook.com/ABCDE

以下应不被接受或无效:

http://www.facebook.com/   => User name/page name not given
http://www.facebook.com/ABC => User name/page name should have the minimum length of 5.

对于上述要求,我按照正则表达式进行了设置,但它没有检查用户名或页面名称,这是唯一的问题。休息工作正常:

/^(https?:\/\/)?((w{3}\.)?)facebook.com\/(([a-z\d.]{5,})?)$/

我对正则表达式很陌生,所以不太了解它。

任何类型的帮助都将不胜感激。

提前致谢。

最佳答案

parse_url() 可以帮助您。

<?php

$array = array(
"www.facebook.com/ABCDE",
"facebook.com/ABCDE",
"http://www.facebook.com/ABCDE",
"https://www.facebook.com/ABCDE",
"http://www.facebook.com/",
"http://www.facebook.com/ABC"
);

foreach ($array as $link) {
if (strpos($link, "http") === false) {
$link = "http://" . $link; //parse_url requires a valid URL. A scheme is needed. Add if not already there.
}
$url = parse_url($link);
if (!preg_match("/(www\.)?facebook\.com/", $url["host"])) {
//Not a facebook URL
echo "FALSE!";
}
elseif (strlen(trim($url["path"], "/")) < 5) {
//Trailing path (slashes not included) is less than 5
echo "FALSE!";
}
else {
//None of the above
echo "TRUE";
}
echo "<br>";
}

关于php - 用于验证 facebook 页面 url 的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13572858/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com