有许多网址, 类似abc.abc.com ,abc.com/abc ,www.abc.com.cn , abc.com.tw ,www.abc.co.uk ,www.abc.com.jp/abc.php/id=abc(id=abc后面还可以跟很长)

还有很多种情况,我希望可以是万能的。

如何用PHP正则获取所有网址的一级域名?获得结果为 abc.com,abc.com.cn, abc.co.uk?

情况比较复杂。我用下面的代码,大致可以判断,但是当域名里有com,net,org,gov,cc,biz,info,cn,co时,正则出的结果就有问题了。

比如www.cool.com,被正则成了www.co。

希望正则高手帮我修改一下,变成一个万能的一级域名正则代码。

$url = $row["url"];preg_match("#[w-]+.(com|net|org|gov|cc|biz|info|cn|co)(.(cn|hk|uk))*#", $url, $match);echo $match[0];

回复讨论(解决方案)

$s = <<< TEXTabc.abc.comabc.com/abcwww.abc.com.cnabc.com.twwww.abc.co.ukwww.abc.com.jp/abc.php/id=abcwww.cool.comTEXT;foreach(split("[rn]+", $s) as $url) { preg_match("#[w-]+.(com|net|org|gov|cc|biz|info|cn|co)b(.(cn|hk|uk|jp|tw))*#", $url, $match); echo "

$url

" . $match[0];}

abc.abc.com

abc.com

abc.com/abc

abc.com

www.abc.com.cn

abc.com.cn

abc.com.tw

abc.com.tw

www.abc.co.uk

abc.co.uk

www.abc.com.jp/abc.php/id=abc

abc.com.jp

www.cool.com

cool.com

楼上正解

代码是万能的,版主也是万能的。

欢呼~~

www.net.cn 万网域名,这个解析出来就不对,类似的 www.com.cn,当然是很特殊的个例

java获取一级域名 正则_正则获取各类URL的一级域名代码是否可行?相关推荐

  1. java集合框架的结构_集合框架(Collections Framework)详解及代码示例

    简介 集合和数组的区别: 数组存储基础数据类型,且每一个数组都只能存储一种数据类型的数据,空间不可变. 集合存储对象,一个集合中可以存储多种类型的对象.空间可变. 严格地说,集合是存储对象的引用,每个 ...

  2. java 微信发送模板的_微信开发:微信发送模板消息代码示例

    最近一个微信开发的项目里需要发送微信模板消息给卖家或者供应商等,微信开发其实也就按照微信的官方接口要求组装起来即可,下面简单介绍一下我的微信模板发送代码. 1.获取access token,至于acc ...

  3. java获取vm运行参数_如何获取在Java中运行Java VM的版本?

    java获取vm运行参数 To get the version of running VM (Virtual Machine) in Java, we use the getProperties() ...

  4. java map 随机取值_随机获取一个集合(List, Set)中的元素,随机获取一个Map中的key或value...

    利用Java提供的Random类.从List或Set中随机取出一个元素,从Map中随机获取一个key或value. 因为Set没有提供get(int index)方法,仅仅能先获取一个随机数后.利用一 ...

  5. java 获取bean的注解_如何获取spring 注解的bean

    展开全部 不用e69da5e887aa62616964757a686964616f31333337613131配置xml,直接java代码实现,参考代码如下:public class GetAppli ...

  6. java正则表达式 以开头结尾_正则匹配 符合以什么开头以什么结尾的

    java private static String getQuestionResolution(String html){ String regex = "[解析]([\\s\\S]*?) ...

  7. java 解析 json 索引对象_怎么获取json对象的属性和值

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写.同时也易于机器解析和生成.它基于JavaScript(Standard ECMA-262 ...

  8. java获取时间的网站_如何获取网站服务器的时间

    原理是提取网站http应答报文中的时间信息. (但是请不要用此方法来获取www.bjtime.cn的时间,原因见后) 1. 以下是javascript获取服务器时间的测试代码: var xhr = n ...

  9. java获取项目绝对路径_如何获取项目绝对路径?

    展开全部 用Jsp获取.用Java类获取或用servlet获取项目绝对32313133353236313431303231363533e4b893e5b19e31333363396465路径. 一.用 ...

最新文章

  1. POJ 3690 找星座(2D匹配)(未解答)
  2. 我这么努力读个博士,难道只是为了进个高校拿5000每月的工资?
  3. java代码修改触发编译_gcc -O0仍然优化了“未使用”的代码 . 是否有一个编译标志来改变它?...
  4. 数论 —— 线性同余方程组与中国剩余定理
  5. Kafka开发--C#生产和消费消息
  6. 网络重置有多难搞!!win10网络重置后怎么解决
  7. 自媒体运营,你要的小工具来了
  8. 18年12月英语六级第二套听力单词
  9. 类似print shopmail可变数据生成,排版、拼版实现
  10. 逻辑学是计算机科学的一个重要分支,逻辑学在计算机科学中应用.doc
  11. 如何获取地址栏的id (参数)
  12. 宝塔面板linux账号密码忘记,宝塔面板忘记账号或密码的解决办法
  13. x5650服务器装系统,笔记本处理器天梯图,小猪教您最新笔记本显卡天梯图
  14. 通过银行卡号获取银行卡所属银行
  15. Kendo ui 使用总结----Kendo UI 模板
  16. 游戏服务器框架概括分析
  17. 蓝牙血压计医疗方案设计
  18. 日知录(15):记药盒的串口通信
  19. 用Mpvue开发微信小程序,微信语音聊天
  20. Linux操作系统网络驱动程序编写

热门文章

  1. 拖延症总治不好,怎么办
  2. 膜拜了,上海一90后绘制出《盗墓笔记》全套地图
  3. SU插件情报局 | SketchyFFD 形体变形工具详解(附插件获取)
  4. iOS真机和模拟器CPU架构
  5. 携程运维总监手把手带你上手CI/CD
  6. php实现轮播视频教程,实现轮播效果的方法
  7. Java代理设计模式详解
  8. apple mac 系统键盘输入乱码
  9. EIP-712签名介绍以及使用hardhat实现
  10. 移动APP测试流程(大致)