正则表达式完美解析URL中的各部分
2017-03-15 14:33
197 查看
var parse_url = /^(?:([A-Za-z]+):)?(//{0,3})([0-9./-A-Za-z]+)(?::(/d+))?(?://([^?#]*))?(?:/?([^#]*))?(?:#(.*))?$/; var url = "http://www.baidu.com/?loehuang"; var result = parse_url.exec(url); var names = ['url','scheme','slash','host','port','path','query','hash']; var blanks = " "; for(var i=0;i<names.length;i++){ document.writeln(names[i] + ":" + blanks.substring(names[i].length),result[i]) }
结果:
url: http://www.baidu.com/?loehuang scheme: http slash: // host: www.baidu.com port: path: query: loehuang hash:
正则解释:
?: 表示不捕获[A-Za-z] 表示匹配大小写字母,
[A-Za-z] + 表示可连续匹配一个以上大小写字母
([A-Za-z]+) 表示捕获括号中的匹配内容
([A-Za-z]+):)? 表示可匹配0-1次?前面内容
//{0,3} 表示可连续匹配“/”0至3个
[0-9./-A-Za-z]+ 表示连续匹配一个以上的大小写字母、0-9数字以及“.”、”/”、“-”
/d+ 表示连续匹配数字
(?::(/d+)) 表示匹配“:”和数字,不捕获外边括号的内容,捕获里边括号的内容
[^?#]* 表示连续匹配除“?”和“#”的内容
相关文章推荐
- 完美的js验证url(正则表达式)
- SQL Server Url正则表达式 内存常驻 完美解决方案
- python使用正则表达式解析http url
- 最完美的匹配网页中图片 src 部分的正则表达式
- 一个js通用函数,通过正则表达式获取url的各个部分。
- JS正则表达式解析出网址中的域名部分
- 完美的js验证网址url(正则表达式)
- 使用正则表达式对URL进行解析
- 使用正则表达式解析URL
- 匹配URL的正则表达式解析
- ASP正则表达式解析出网址中的域名部分
- javascript 正则表达式 一个 匹配和解析url的
- IOS开发---菜鸟学习之路--(二十一)-利用正则表达式解析URL获取其中的参数
- 完美的js验证url(正则表达式)
- 正则表达式解析img标签以及给部分文字设置颜色和超链接
- JavaScript正则表达式解析URL的技巧
- 正则表达式解析URL
- 利用正则表达式解析URL
- ASP正则表达式解析出网址中的域名部分
- 一个js通用函数,通过正则表达式获取url的各个部分。