`

JAVA正则取URL主域名

阅读更多



String url = "http://anotherbug.blog.chinajavaworld.com/entry/4545/0/";
Pattern p = Pattern.compile("(?<=http://|\\.)[^.]*?\\.(com|cn|net|org|biz|info|cc|tv)",Pattern.CASE_INSENSITIVE);
Matcher matcher = p.matcher(url);
matcher.find();
System.out.println(matcher.group());



结果:
chinajavaworld.com

如果要得到 chinajavaworld.com/entry/4545/0/

正则表达式最后加上 .* 即可.




主要是判断后缀而后缀可能有
.com
.net
.cn
.org
.com.cn
.net.cn
.org.cn
.biz
.info
.cc
.tv
  
写出来就是
  
(?<=(?:://\w+\.)?)(?:\w+\.)(?:com\.cn|net\.cn|org\.cn|com|net|org|cn|biz|info|cc|tv)
  
测试
http://www.csdn.com/....
http://www.csdn.com.cn/....
ftp://www.csdn.com/....
www.csdn.com/...
等等
都能正确获取csdn.xxx(.xx)
  
注意:com\.cn|net\.cn|org\.cn   必须放在   com|net|org的前面   因为或选项是从左到右短路查询的   前面找到匹配后面的将被忽略.
   




JAVA正则取URL主域名
作者:anotherbug 日期:2008-04-11 11:55:49


String url = "http://anotherbug.blog.chinajavaworld.com/entry/4545/0/";
Pattern p = Pattern.compile("(?<=http://|\\.)[^.]*?\\.(com|cn|net|org|biz|info|cc|tv)",Pattern.CASE_INSENSITIVE);
Matcher matcher = p.matcher(url);
matcher.find();
System.out.println(matcher.group());



结果:
chinajavaworld.com

如果要得到 chinajavaworld.com/entry/4545/0/

正则表达式最后加上 .* 即可.

如要取完整域名,

1

   

Pattern.compile("[^//]*?\\.(com|cn|net|org|biz|info|cc|tv)", Pattern.CASE_INSENSITIVE);
分享到:
评论

相关推荐

    正则匹配URL.txt

    在JSP中,开发者可以利用Java的正则表达式功能来实现这一点。下面是一个常见的用于匹配URL的正则表达式: ```regex http(s)?://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)? ``` #### 解析正则表达式 1. **`http(s)?://`**...

    java正则表达式实例(邮箱,车牌,密码,url,IP,身份证,车牌等等)

    ### Java正则表达式实例详解 #### 一、概述 正则表达式是一种强大的文本处理工具,能够帮助我们在字符串中查找、替换或提取特定模式的数据。在Java编程中,正则表达式的应用非常广泛,例如在表单验证、数据清洗等...

    java正则表达式,十分有用的正则表达式

    ### Java正则表达式的应用与理解 #### 一、引言 在软件开发过程中,处理字符串是一项非常常见的任务。为了高效地完成字符串的匹配、查找、替换等操作,正则表达式成为了一种不可或缺的工具。Java作为一种广泛使用...

    Java 正则表达式小结

    Java正则表达式是Java编程语言中的一个强大工具,它用于在字符串中进行模式匹配和查找、替换等操作。在本文中,我们将深入探讨Java正则表达式的概念、语法以及如何在实际编程中使用它们。 1. **正则表达式基础** -...

    java正则表达式大全。。

    根据提供的标题、描述、标签及部分内容,我们可以整理出关于Java正则表达式的多个知识点。以下是对这些内容的详细解析: ### Java正则表达式基础知识 #### 1. 基本概念 - **正则表达式**:一种用于匹配字符串模式...

    java正则表达式获取url的host示例

    以下将详细介绍如何使用Java正则表达式来实现这一功能。 首先,我们来看提供的代码片段: ```java public static String getHost(String url) { if(url==null||url.trim().equals("")) { return ""; } String ...

    正则表达式 Java 判断字串是否合理

    根据给定的文件信息,我们可以总结出以下关于Java正则表达式的重要知识点: ### 1. 正则表达式简介 正则表达式是一种强大的文本处理工具,它能够帮助我们匹配、查找、替换等操作符合某种规则的字符串。在Java中,...

    Java正则表达式的使用实例

    Java正则表达式是Java编程语言中用于处理字符串的强大工具,它允许程序员通过模式匹配来查找、替换或分割文本。在Java中,正则表达式是通过`java.util.regex`包中的类和接口实现的。本实例将深入探讨如何在Java中...

    java 银行卡 验证 正则表达式使用

    在"java 银行卡 验证 正则表达式使用"这个主题中,我们将深入探讨如何利用正则表达式进行银行卡、手机号码和邮箱以及URL地址的有效性验证。下面将详细介绍这些知识点。 首先,银行卡验证。银行卡号通常由一系列数字...

    Java各种验证的正则表达式

    通过学习和熟练掌握这些Java正则表达式,开发者可以在程序中实现高效的数据验证,提升代码质量。同时,理解正则表达式的原理和技巧,还能帮助解决复杂的数据处理问题,提高编程效率。在实际项目中,可以根据需求组合...

    JAVA正则表达式详解

    Java正则表达式是编程语言Java中用于处理字符串的强大工具,它允许程序员通过模式匹配来查找、替换或分割文本。正则表达式在各种场景下都有广泛应用,如数据验证、文本提取、数据清洗等。本篇文章将深入探讨Java中正...

    Java常用正则表达式.txt

    ### Java常用正则表达式详解 #### 匹配腾讯QQ号 **正则表达式:** [1-9][0-9]{4,} **评注:** 腾讯QQ号从10000开始。 - **解析:** 此表达式确保了QQ号的第一个数字必须是非零数字(即1到9之间的任意一个),接着...

    Js检测判断URL网址输入是否正确

    一个标准的URL通常包括以下部分:协议(scheme)、子域名(subdomain)、主域名(domain name)、顶级域名(top-level domain, TLD)、端口号(port)、路径(path)、查询字符串(query string)和锚点(fragment)...

    正则表达式列举 代码 项目中直接使用

    它匹配以`http://`开头的URL,后跟一个或多个子域名,每个子域名由字母数字字符或破折号组成,以及主域名和可选的路径参数。这对于从文本中提取或验证URL非常有帮助。 ### JavaScript事件处理正则应用 除了上述...

    java替换url的域名和端口方法

    在Java编程中,有时我们需要对URL进行操作,例如替换URL中的域名或端口号。这在处理网络请求或者构建动态链接时非常有用。本篇将详细解释如何使用Java来实现这个功能,具体通过一个实例方法来展示。 首先,我们需要...

    正则表达式大全.docx

    $/` - 此正则表达式匹配完整的URL,包括HTTP或HTTPS协议、域名和可选路径。 6. IP 地址:`/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/` - 用于验证IPv4地址的...

    Java 常用正则表达式

    以下是一些常见的Java正则表达式及其用途: 1. `^\d+$`:这个表达式用于匹配非负整数,包括0。它会确保输入只包含数字且无前导或尾随的非数字字符。 2. `^[0-9]*[1-9][0-9]*$`:此表达式用于验证正整数,它确保...

    Java常用的一些正则表达式

    Java正则表达式是编程语言Java中用于处理字符串的强大工具,它允许我们通过模式匹配来验证、提取或替换文本。在Java中,正则表达式是通过`java.util.regex`包中的类和接口实现的,如`Pattern`、`Matcher`和`...

    正则表达式解析网址Java代码示例

    总之,Java中的正则表达式提供了强大的文本处理能力,可以有效地解析和操作URL。在实际开发中,根据需求选择合适的方法,既可以使用简单的正则表达式,也可以利用内置的URL类,以实现灵活且准确的URL处理。

    Java常用正则表达式

    ### Java常用正则表达式知识点解析 #### 数字匹配正则表达式 1. **匹配任意数字:** `^[0-9]*$` - 正则解释:该表达式匹配一个或多个数字(包括0个)。 - 示例:`123`、`0`、`12345`。 2. **匹配指定长度n的数字...

Global site tag (gtag.js) - Google Analytics