通过正则表达式获取标准url地址的域名和文件后缀名
2016-05-13 21:43
387 查看
形如“http://www.abcdef.com/index.php”或“http://www.abcdef.com/index.php?g=Index&m=Index&a=index”的地址即为标准的url地址,现在我们要通过正则式来获取它的域名“abcdef.com”和地址中的文件后缀名“.php”。
1、获取url地址域名:
2、获取url中的文件后缀名:
当url不带参数时,此时匹配的正则式为:"/\.(\w+)$/";当url带参数时,此时匹配的正则式为:"/\.(\w+)\?/"(注意此时文件后缀名后还带着个问号)。
将这两种情况合并,可编写出获得文件后缀名的php代码:
1、获取url地址域名:
<?php $url = "http://www.abcdef.com/index.php"; // $url = "http://www.abcdef.com/index.php?g=Index&m=Index&a=index"; preg_match("/^(\w+:\/\/)?([^\/]+)/i", $url , $matches); // 获得主机名 $host = $matches[2]; // 从主机名中取得后面两段(.符号将主机名划分为三段,后两段即为域名) preg_match("/[^.\/]+\.[^.\/]+$/", $host, $matches); echo "$matches[0]"; ?>结果为:abcdef.com
2、获取url中的文件后缀名:
当url不带参数时,此时匹配的正则式为:"/\.(\w+)$/";当url带参数时,此时匹配的正则式为:"/\.(\w+)\?/"(注意此时文件后缀名后还带着个问号)。
将这两种情况合并,可编写出获得文件后缀名的php代码:
<?php // $url = "http://www.abcdef.com/index.php"; $url = "http://www.abcdef.com/index.php?g=Index&m=Index&a=index"; //获得url地址文件后缀名(可能包含问号?) preg_match("/(\.(\w+)\?)|(\.(\w+)$)/",$url,$str); //去除问号 $suffix = preg_split("/\?/",$str[0]); echo $suffix[0]; ?>结果为:.php
相关文章推荐
- java-用HttpURLConnection发送Http请求.
- ICANN 推迟批准 .Org 交易
- msql 正则表达式
- 正则表达式
- 黑客攻破域名注册商 Web.com 安全防线,客户私密信息或被泄露
- dns。dhcp,ftp
- 提高域名信任度的8个小技巧[推荐]
- .ME域名国内预注册开始
- CEPA 搭桥引路 HK域名直击香港市场
- .tel域名正式开放注册 把握先机赢商机
- Asia域名超30万_收益7000万人民币
- Mootools 1.2教程 正则表达式
- 二级域名原理以及程序
- VBScript 剪贴板抓取URL并在浏览器中打开
- 注册新网的域名所有出错的代码解说
- 域名DNS解析的故障解决方法
- 新网互联 域名 泛解析设置方法
- CN域名强势发展 稳居全球第一大国家顶级域名
- 批处理FINDSTR正则表达式用法实例分析