PHP正则匹配网址(URL)中主域名写法
来源:互联网 发布:优易ip代理软件 编辑:程序博客网 时间:2024/05/22 10:57
在web开发中很多时候要获取一域名信息,特别是在一些数据分析采集过程中;域名信息多样,有主域名,有二级域名、三级域名、、、有相似类型的如:.com、.com.cn,如何正确分析出字符中网址url的主域名了?下面是是个人工作中专结出来的:
有一个字符串,我们要匹配出其中的包含的主域名信息,举例如下:
$url='天气预报15天查询网址:http://tqybw.net/,请在家收藏';
preg_match('/[\w][\w-]*\.(?:com\.cn|com|cn|co|net|org|gov|cc|biz|info)(\/|$)/isU', $url, $domain);
echo $domain[0];
上面将输出:tqybw.net
注意:正则中(?:com\.cn|com|cn|co|net|org|gov|cc|biz|info)域名后辍较长的要放在前面,如:com.cn应放在.com、.cn的前面否则容易匹配出错;
[\w][\w-]*\.
这个应该能明白吧,就匙匹配以字母、数字、下划线开头,并且后面为字母、数字、下划线或减号加上点组成d字符串
其实最好应该匙[a-z0-9][\a-z0-9-]*\. 因为合法d域名只能以字母、数字开头,后面可以用减号连接,但匙不允许有下划线。
这个应该能明白吧,就匙匹配以字母、数字、下划线开头,并且后面为字母、数字、下划线或减号加上点组成d字符串
其实最好应该匙[a-z0-9][\a-z0-9-]*\. 因为合法d域名只能以字母、数字开头,后面可以用减号连接,但匙不允许有下划线。
(?:com\.cn|com|cn|co|net|org|gov|cc|biz|info)(\/|$) 域名类型
(\/|$) 表示结尾为域名类型加上/或者域名类型的字符串
例如下面两种情况:
http://tqybw.net/ditu/
http://tqybw.net
(\/|$) 表示结尾为域名类型加上/或者域名类型的字符串
例如下面两种情况:
http://tqybw.net/ditu/
http://tqybw.net
复杂二级域名匹配:
有一个二级域名:http://15tianqi.xiamen.gov.cn.tqybw.net/,其二级域名名称(15tianqi.xiamen.gov.cn)本身就是符合域名规则,但我们要匹配出直实域名tqybw.net,是怎么写了?
其实写法是一样的,因为这个正则是从末端开始匹配的!阅读全文
0 0
- PHP正则匹配网址(URL)中主域名写法
- PHP正则匹配网址(URL)中主域名写法
- 正则表达式匹配域名、网址、url
- php: 正则中匹配$符号的写法
- php url正则匹配
- PHP正则表达式从url中取得域名
- PHP正则表达式从url中取得域名
- 正则表达式 匹配URL或者网址
- 正则表达式匹配URL或者网址
- 正则表达式匹配URL或者网址
- javascript 正则匹配url的域名、文件名字
- 使用正则表达式来匹配URL或者网址
- js最强的匹配网址-url的正则表达式:匹配www,http开头的一切网址
- 匹配URL或者网址
- PHP中关于正则表达式匹配任意字符(包括换行符)的写法
- PHP 从 URL 中提取域名 函数
- 匹配域名正则
- 根域名匹配正则
- HTTP 和 WebSocket 协议(上)
- 单列模式
- Python3.x和Python2.x的区别
- 如何向普通人解释机器学习、数据挖掘
- javascript event(事件对象)详解
- PHP正则匹配网址(URL)中主域名写法
- 深度学习实战Caffe(一)-Caffe环境安装
- 整理一下最近用到的技术点
- 2017第九届中部武汉连锁加盟投资创业展览会会刊(参展商名录)
- zabbix邮箱告警的详细配置
- SparkSQL的简介
- Hello Android
- 自定义简单ViewPager
- C++ 二叉树实现词频分析