Mar*_*tój 22 javascript regex validation url
是否有人使用正则表达式来验证网址(不是在文本段落中找到它们)?JavaScript代码段将是首选.
Aks*_*lén 50
在接受的答案中, bobince做对了:仅验证方案名称://,空格和双引号通常就足够了.以下是如何在JavaScript中实现验证:
var url = 'http://www.google.com';
var valid = /^(ftp|http|https):\/\/[^ "]+$/.test(url);
// true
Run Code Online (Sandbox Code Playgroud)
要么
var r = /^(ftp|http|https):\/\/[^ "]+$/;
r.test('http://www.goo le.com');
// false
Run Code Online (Sandbox Code Playgroud)
要么
var url = 'http:www.google.com';
var r = new RegExp('/^(ftp|http|https):\/\/[^ "]+$/');
r.test(url);
// false
Run Code Online (Sandbox Code Playgroud)
语法参考:
bob*_*nce 27
实际的URL语法非常复杂,并且不容易在正则表达式中表示.大多数看起来很简单的正则表达式会产生许多假阴性和误报.看看这些努力的娱乐性,但即使最终结果也不好.
此外,您通常希望允许IRI以及旧式URI,因此我们可以链接到有效地址,例如:
http://en.wikipedia.org/wiki/Þ
http://??.???/
Run Code Online (Sandbox Code Playgroud)
我只会去进行简单的检查:它是从一个已知良好的方法开始的:名字?它没有空格和双引号吗?如果是这样那么地狱,它可能已经足够好了.
Mus*_*han 16
试试这个正则表达式
/(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/
Run Code Online (Sandbox Code Playgroud)
它最适合我.
小智 6
这个 REGEX 是 @Aamir 答案的一个补丁,对我有用
/((?:(?:http?|ftp)[s]*:\/\/)?[a-z0-9-%\/\&=?\.]+\.[a-z]{2,4}\/?([^\s<>\#%"\,\{\}\\|\\\^\[\]`]+)?)/gi
Run Code Online (Sandbox Code Playgroud)
它匹配这些 URL 格式
小智 5
我已经找到了一些成功的方法:
/^((ftp|http|https):\/\/)?www\.([A-z]+)\.([A-z]{2,})/
Run Code Online (Sandbox Code Playgroud)
这显然不是完美的,但是可以很好地处理我的案件
| 归档时间: |
|
| 查看次数: |
84700 次 |
| 最近记录: |