1.软文推荐

2.软文推荐

3.软文推荐

这篇文章主要给大家介绍了关于正则表达式拆分url的相关资料,文中通过实例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

背景

做web开发的同学,经常会有从url中获取二级域名或者主域名或者参数等等需求,需要扎实的正则功底。本文提供一个全面的url拆分案例,需要哪个部分用哪个部分。

案例

将url的各个部分拆开,让我想取哪部分就取哪部分?

url: http://www.baidu.com/love/java?lang=java
regex: (w+)://([^/:]+)(:d*)?([^# ]*)
使用js举例
var url = "http://www.baidu.com:80/love/java?lang=java";
var patt1 = /(w+)://([^/:]+)(:d*)?([^# ]*)/;
arr = url.match(patt1);
for (var i = 0; i "");
}

输出结果如下:

http://www.baidu.com:80/love/java?lang=java
http
www.baidu.com
:80
/love/java?lang=java
使用java举例
String url = "http://www.baidu.com:80/love/java?lang=java";
Pattern pattern = Pattern.compile("(\w+):\/\/([^/:]+)(:\d*)?([^# ]*)");
Matcher matcher = pattern.matcher(url);
matcher.find();
for (int i = 1; i 

输出结果:

http
www.baidu.com
:80
/love/java?lang=java
正则说明

实例中的数组包含 5 个元素,索引 0 对应的是整个字符串,索引 1 对应第一个匹配符(括号内),以此类推。

第一个括号子表达式捕获 Web 地址的协议部分。该子表达式匹配在冒号和两个正斜杠前面的任何单词。

第二个括号子表达式捕获地址的域地址部分。子表达式匹配非 : 和 / 之后的一个或多个字符。

第三个括号子表达式捕获端口号(如果指定了的话)。该子表达式匹配冒号后面的零个或多个数字。只能重复一次该子表达式。

第四个括号子表达式捕获 Web 地址指定的路径和 / 或页信息。该子表达式能匹配不包括 # 或空格字符的任何字符序列。

到此这篇关于正则表达式拆分url的文章就介绍到这了。

本文来源:www.lxlinux.net/9780.html,若引用不当,请联系修改。

相关文章 8

1

物理机服务器购买(物理机服务器租用) 1分钟前

目录:1、如何购买服务器2、怎样选购合适的VPS服务器3、4H8G5M物理服务器多钱?如何购买服务器 你是说的物理机还是云服务器,乳沟是后者...

2

嵌入式界面神器 littleVGL 3分钟前

1、littleVGL 介绍 littleVGL 是近几年开始流行的一个小型开源嵌入式 GUI 库,具有界面精美,消耗资源小,可移植度高,响应式布局等特点,全库采用纯...

3

无理由退款(快手小黄车如何关闭7天无理由退款) 5分钟前

目录:1、七天无理由退换货是什么意思2、7天无理由退货的条件3、网购无理由退货规定?七天无理由退换货是什么意思 【法律分析】:七天...

4

怎样在 Ubuntu 中修改默认程序 7分钟前

作为一个新手,你需要知道如何在 Ubuntu 中修改任何默认程序,这也是我今天在这篇指南中所要讲的。 对于我来说,安装 VLC 多媒体播放器是...

5

远程登录日志(Windows远程登录日志) 8分钟前

目录:1、Windows Server 2008怎么查看远程桌面登录日志2、Win7系统怎么查看远程连接登录记录3、Windows服务器远程登录日志查询方法,linux查看登...

6

Linux中防止SYN Flood攻击具体方法 10分钟前

SYN Flood (SYN洪水) 是种典型的DoS (Denial of Service,拒绝服务) 攻击。效果就是服务器TCP连接资源耗尽,停止响应正常的TCP连接请求。 如果您遭受...

7

云桌面优势(云桌面的优势) 12分钟前

目录:1、云桌面是什么?使用云桌面有什么好处吗?2、云桌面是什么?云桌面有哪些优势?3、企业云桌面虚拟化办公的优势??4、云桌面...

8

讲解一下CQRS模式学习 13分钟前

由于存在增删改与查询逻辑有差异的这个问题,为了更好的针对差异进行抽象,我们可以将它们分开进行设计。也就是我们的CQRS模式,即命...