`
web001
  • 浏览: 99140 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

使用正则表达式过滤url链接

    博客分类:
  • Java
阅读更多

 

先把代码贴出来吧:

String cc = "专业网站建设 欢迎来到http://www.hualai.net.cn";

Pattern pattern = Pattern.compile("[http]{4}\\:\\/\\/[a-z]*(\\.[a-zA-Z]*)*(\\/([a-zA-Z]|[0-9])*)*\\s?");

Matcher matcher = pattern.matcher(cc);

cc = matcher.replaceAll("");

这段代码不难,主要是表示url的这条正则表达式语句怎么理解的问题了,下面就来分解一下:

 

[http]{4}\\:\\/\\/([a-zA-Z]|[0-9])*(\\.([a-zA-Z]|[0-9])*)*(\\/([a-zA-Z]|[0-9])*)*\\s?

[http]{4}这个大家都懂吧,就是匹配http;

 

\\:这一部分匹配的是“:”号,这里大家要注意了,在网上找到的大多数的正则表达式都回用到\这个转义符,但是在上述的这段代码里面必须要多添加一个\号即:\\:,这样才能匹配成功。

 

\\/\\/这个自然是匹配//

 

([a-zA-Z]|[0-9])*(\\.([a-zA-Z]|[0-9])*)*这段匹配的是主机名(好像是这么叫的,抱歉,太久了都忘了,就是http://www.baidu.com其中的www.baidu.com)在所举的例子里可以看到这一串是由两个.隔开三个字符串构成的,因此要这么匹配:([a-zA-Z]|[0-9])*来匹配www,(\\.([a-zA-Z]|[0-9])*)*这个来匹配.baidu.com,这是个多次匹配

 

(\\/([a-zA-Z]|[0-9])*)* 这个匹配的是这种情况:(http://www.hualai.net.cn/webcase/)它匹配的就是/webcase的情况,当然如果后面还有类似字符的话,再来个多次匹配就ok了

 

最后说下\\s?这匹配的是url后面的空格,后面加了个?的意思是说可有可无。

 

当然我这方法说不上好,只是说出来跟大家分享一下,大家要是有更好的方法,还请不吝赐教哦。

分享到:
评论

相关推荐

    PHP用正则表达式过滤超链接

    ### PHP使用正则表达式过滤超链接 在Web开发中,经常需要处理HTML文本,比如提取其中的超链接。PHP提供了强大的字符串处理功能,利用正则表达式可以非常方便地实现这一需求。本文将详细介绍如何使用PHP结合正则...

    asp.net利用正则在HTML中提取图片路径(asp.net正则表达式过滤出HTML代码中图片路径).txt

    ### ASP.NET 中使用正则表达式提取 HTML 代码内的图片路径 #### 背景介绍 在 Web 开发中,经常需要处理 HTML 文档或字符串,例如从网页中提取特定的信息,比如图片链接等。ASP.NET 是一种广泛使用的 Web 应用开发...

    C正则表达式库

    例如,在Web服务器中,可以使用正则表达式库解析请求URL;在搜索引擎中,可以用来检索和过滤关键词;在文本编辑器中,可以实现查找和替换功能。 总的来说,GUN C的正则表达式库为C程序员提供了强大的字符串处理能力...

    javascript正则表达式表单验证大全

    通过正则表达式和字符串替换方法,可以从完整的URL中提取出文件名或路径,这对于动态网页链接处理和资源定位十分关键。 #### 输入过滤 使用onkeyup和onbeforepaste事件监听器,结合正则表达式,可以实时过滤用户的...

    超链接正则表达式

    学习和掌握正则表达式,尤其是处理超链接的正则,可以帮助你更好地处理网络数据,实现诸如网页抓取、链接验证、内容过滤等功能。理解正则表达式的元字符、量词、分组、预查等概念,将使你在处理文本数据时游刃有余。...

    常用的正则表达式.doc

    根据给定文件的信息,我们可以总结出一系列常用的正则表达式及其应用场景。正则表达式是一种强大的...通过这些正则表达式的使用,可以在实际开发中有效地提高数据处理的效率和准确性,确保程序运行的稳定性和安全性。

    正则表达式练习文件(清洗)

    正则表达式是编程语言中用于处理字符串的强大工具,它在Python中...通过学习和实践这些知识点,你将能够熟练地使用正则表达式进行数据清洗、文本分析以及网络爬虫开发。记得理论结合实践,多做练习,加深理解和运用。

    Java正则表达式教程

    5. **文件名过滤**:在处理文件列表时,可以使用正则表达式筛选出满足特定条件的文件名。 ### 学习资源 "Java Regex Tutorial"文档会涵盖这些基本概念,以及更复杂的构造如断言、选择、非捕获组等。此外,它可能还...

    ️ 讲解关于正则表达式,前端,后端等相关的知识。也记录自己的一些学习内容.zip

    5. **HTML标签过滤**:在用户输入内容时,防止恶意插入HTML代码,可以使用正则表达式移除或转义非法标签。 后端开发中的正则表达式应用: 1. **数据过滤**:在接收用户输入数据时,后端需要对数据进行清洗,去除...

    非常有用的正则表达式

    根据提供的文件信息,我们可以整理出一系列与正则表达式相关的知识点。这些正则表达式主要用于数据验证,确保输入的数据格式符合预期的要求。下面将逐一解释这些正则表达式的含义及应用场景。 ### 1. 验证纯数字 - ...

    4.3_信息过滤规则-正则表达式1

    提取过程包括判断文件类型、正则表达式匹配、整理URL格式等步骤,确保获取到有效的链接。 正则表达式是处理字符串的强大工具,尤其在网页内容提取中发挥着重要作用。在Python中,可以使用正则表达式来精确匹配和...

    正则表达式详细说明说明

    - **应用场景**:用于验证或提取文本中的URL链接。 - **示例**:从一篇博客文章中提取所有超链接,可以使用此表达式快速定位并获取。 #### 匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):`^[a-zA...

    正则表达式集锦

    #### 四、URL格式正则表达式 **表达式**: `((http|ftp)://)?(((([d]+.)+){3}[d]+(/[w./]+)?)|([a-z]w*((.w+)+){2,})([/][w.~]*))` - **解释**: - `((http|ftp)://)?`:可选的协议头。 - `(([d]+.)+){3}[d]+`:...

    正则表达式例子

    例如,你可以使用正则表达式来查找所有的超链接(URL)或者特定格式的段落。 "分析网页"可能指的是对网页内容进行深度解析,比如提取用户评论、新闻标题等。这需要更复杂的正则表达式配合HTML解析库,例如...

    常用正则表达式归纳

    根据提供的文档标题、描述以及部分内文,我们可以总结并扩展出以下有关正则表达式的知识点: ### 常用正则表达式归纳 #### 1. 匹配中文字符 **正则表达式**: `[\u4e00-\u9fa5]` **用途**: 用于匹配任何中文字符。 ...

    常用正则表达式

    以上正则表达式覆盖了特殊字符、电话号码、Email地址和完整URL的格式验证,适用于多种场景下的数据校验。 ### 总结 通过上述正则表达式的解析,我们可以看到正则表达式在文本处理、数据验证和格式化中的强大应用...

    正则表达式30分钟入门教程 v2.1(高清晰版)

    在开发过程中,常常遇到需要查找符合某些复杂规则的字符串的情况,例如验证电子邮件地址的有效性、提取文档中的URL链接、过滤用户输入的数据等。正则表达式作为一种灵活且功能强大的工具,可以轻松应对这类需求。 #...

    常用和格式判断正则表达式

    通过以上介绍,我们不仅了解了如何构建和使用这些正则表达式,还学会了如何根据实际需求灵活调整表达式的参数,以满足不同的验证场景。在实际开发过程中,熟练掌握并运用这些正则表达式将会极大地提高工作效率,确保...

    C#小程序之----学习XML文件使用,正则表达式使用。

    在C#中,我们可以使用`System.Text.RegularExpressions`命名空间中的`Regex`类来处理正则表达式。假设我们需要提取影院的电话、地址和经纬度,我们可以编写相应的正则模式,如下所示: ```csharp string ...

Global site tag (gtag.js) - Google Analytics