gpt4 book ai didi

javascript - 使用正则表达式强制 URL 字段不包含 "http://www."

转载 作者:行者123 更新时间:2023-11-28 00:27:25 25 4
gpt4 key购买 nike

我需要验证输入字段的 URL 字段,该输入字段处理一个挑剔的 API,该 API 将接受特定格式的 URL 字符串 - 字符串开头没有附加 www 和 http,否则就会中断。 JavaScript 处理程序从validation.php 文件中获取数据。除了一个字段之外,我的一切都在工作。

<小时/>

所以,例如我想要

example.com/example

example.com

要通过验证,但我想要

http://example.com/example

http://www.example.com/example

以及任何变体,包括 http://或 www 的任何派生形式。不验证。

<小时/>

我下面的正则表达式目前允许任何类型的 URL,包括 http 和 www。我希望它只允许上述类型的 URL 字符串,但不知道如何处理。

    // API URL VALIDATION
if ($formfield == "api_url") {
if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i", $value)) {
echo "Please enter your URL without the http://www part attached"
} else {
echo "<span>Valid</span>";
}

}

有什么想法吗?

最佳答案

您可以在 preg_match 中使用这个简单的基于负向前瞻的正则表达式:

~^(?!https?://)(?!www\.).+$~i

RegEx Demo

关于javascript - 使用正则表达式强制 URL 字段不包含 "http://www.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29350708/

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