`
faylai
  • 浏览: 78974 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

java 正则表达式获取匹配

阅读更多

比如有下面一段代码:
<a href="11"> <font color="21">aaa </font> </a>
<a href="12"> <font color="22">bbb </font> </a>
<a href="13">ccc </a>
<a href="14"> <font color="24">ddd </font> </a>
<a href="15"> <font color="25">eee </font> </a>
<a href="16">fff </a>

上面的代码意思是 <font color="***">和 </font>不一定有,而且color的值也可能不一样
我现在想得到
aaa
bbb
ccc
ddd
eee
fff

package test1;
import java.util.regex.*;
public class Test6
{ 
    public static void main(String[] args)
    { 
        String s="<a href="11"> <font color="21">aaa </font> </a> "
                +"<a href="12"> <font color="22">bbb </font> </a> "
                +"<a href="13">ccc </a> "
                +"<a href="14"> <font color="23">ddd </font> </a>" 
                +"<a href="15"> <font color="25">eee </font> </a> "
                +"<a href="16">fff </a> ";
        String regex="<a.*?>(.*?)</a>";
         
        Pattern pt=Pattern.compile(regex);
        Matcher mt=pt.matcher(s);
        while(mt.find())
        {
            System.out.println(mt.group(1).replaceAll("<font.*?>|</font>", "").trim());
        }
    } 
} 

 

使用非捕获组

 

package test1;
import java.util.regex.*;
 
public class Test6 ...{
    public static void main(String[] args) ...{
        String str = "<a href="11"> <font color="21">aaa </font> </a>" +
                     "<a href="12"> <font color="22">bbb </font> </a>" +
                     "<a href="13">ccc </a> " +
                     "<a href="14"> <font color="23">ddd </font> </a>" +
                     "<a href="15"> <font color="25">eee </font> </a> " +
                     "<a href="16">fff </a> ";
        String regex = "<a.*?>(?:\s*<font[^>]*>)?(.*?)(?:</font>\s*)?</a>";
        Pattern pattern = Pattern.compile(regex);
        Matcher matcher = pattern.matcher(str);
        while(matcher.find()) ...{
            System.out.println(matcher.group(1));
        }
    }
}

 

 

 

分享到:
评论

相关推荐

    Java使用正则表达式提取XML节点内容的方法示例

    为了帮助开发者更好地掌握Java正则表达式技术,我们提供了一系列的Java正则表达式技巧大全,包括《Java正则表达式技巧大全》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧...

    Java正则表达式 Java 正则表达式

    Java正则表达式是Java语言中用于处理字符串的强大工具,它允许程序员进行复杂的字符串匹配、查找和替换操作。正则表达式(Regular Expression)是一种模式匹配语言,通过特定的语法来描述字符串的模式,用于在文本中...

    使用Java正则表达式分析处理日志

    本篇将围绕“使用Java正则表达式分析处理日志”这一主题,探讨如何利用Java的正则表达式功能来提取、过滤和操作日志数据。 首先,我们需要理解正则表达式的基本概念。正则表达式(Regular Expression)是一种模式...

    java通过正则表达式匹配获取MAC(支持windows和Linux)

    java通过正则表达式匹配获取MAC(支持windows和Linux)

    JAVA正则表达式大全

    以下是对这些文档标题所涉及的Java正则表达式知识点的详细解释: 1. **正则表达式之道** 这个主题可能涵盖了正则表达式的基础概念,包括元字符、字符类、量词和分组。元字符如`.`代表任意字符,`^`表示行首,`$`...

    jJAVA正则表达式替换字符

    本资源文件是我自己总结的,其中包括5个类,这5个类的代码基本概括了java正则表达式替换String的多种情况,比如获取某个文件路径中盘符/后边的部分内容,提取"&lt;title&gt;XXXX&lt;/title&gt;"中的文字XXXX,用正则表达式获取指定...

    Java 使用正则表达式对象实现正则的获取功能

    Java 正则表达式对象实现正则获取功能 在 Java 中,使用正则表达式对象可以实现各种字符串匹配和提取操作。正则表达式对象主要通过 Pattern 和 Matcher 两个类来实现。下面详细介绍如何使用正则表达式对象实现正则...

    Java正则表达式详解(非常适合入门

    ### Java正则表达式详解 #### 一、正则表达式的重要性及应用 正则表达式,作为一种强大的文本处理工具,对于程序员而言是不可或缺的基本技能之一。它在文本的匹配、搜索和替换等方面发挥着不可替代的作用。尤其在...

    强大的JAVA正则表达式处理包jakarta-oro

    Java正则表达式是编程语言中的一个重要组成部分,用于文本处理和模式匹配。Jakarta ORO(Oracle Regular Expressions for Java)是Apache软件基金会开发的一个强大的Java正则表达式库,它为开发者提供了更为灵活和...

    java正则表达式截取demo下载即可运行

    Java正则表达式是Java编程语言中用于处理字符串的强大工具,它允许我们通过模式匹配来查找、替换或分割文本。这个“java正则表达式截取demo”提供了一个可以直接运行的示例,帮助开发者理解如何在Java中使用正则...

    java正则表达式教程html版带目录

    Java正则表达式是Java编程语言中的一个强大工具,它用于模式匹配和字符串处理,尤其在数据验证、文本检索和替换等方面发挥着重要作用。本教程是专为初学者设计的HTML版,旨在帮助读者快速掌握Java正则表达式的概念和...

    java正则表达式实例教程

    Java正则表达式是Java编程语言中用于处理字符串的强大工具,它允许程序员通过模式匹配来查找、替换或分割文本。本教程将深入讲解Java中的正则表达式,并提供丰富的实例来帮助开发者理解和应用这些概念。 1. 正则...

    java正则表达式的使用示例

    Java正则表达式是Java编程语言中的一个强大工具,它用于模式匹配和字符串处理。正则表达式(Regular Expression)是一串特殊的字符序列,可以用来匹配或查找其他字符串中的模式。在Java中,正则表达式的操作主要通过...

    正则表达式自动生成器 V2.0.0.1 官方多语版

    正则表达式(Regular Expression)是一种模式匹配语言,通过预定义的规则来识别和操作字符串。它由一系列特殊字符和组合构成,可以用来检查一个字符串是否符合特定的格式,或者从中提取所需的信息。例如,你可以用...

    java正则表达式检查

    Java正则表达式是编程语言Java中用于处理字符串的强大工具,它允许我们通过模式匹配来查找、替换或提取文本。这个“java正则表达式检查”小工具专门用于测试正则表达式的有效性,帮助开发者验证自己的正则表达式是否...

    java正则表达式学习

    【Java正则表达式学习】 Java正则表达式是Java编程语言中用于处理字符串的强大工具,自JDK1.4版本起被引入。它源于PHP并迅速流行,主要用于复杂字符串的验证和处理。正则表达式可以高效地完成对字符串的检查、分割...

    Java 正则表达式判断字符串是否包含中文

    ### Java正则表达式判断字符串是否包含中文 在日常的软件开发过程中,我们经常会遇到需要对输入的字符串进行校验的情况。例如,在处理用户输入、文本分析或数据清洗时,可能需要判断一个字符串中是否包含中文字符。...

    PB实现的正则表达式

    4. 处理结果:检查匹配结果,获取匹配的子串,或进行替换等操作。 需要注意的是,由于PowerBuilder 11.5年代较久,其支持的正则表达式功能可能相对较弱,对于现代的复杂正则表达式语法可能不完全兼容。在使用时,...

    Java正则表达式详解.pdf

    ### Java正则表达式详解:掌握文本匹配的艺术 正则表达式,又称正则规则或正则模式,是一种用于描述字符串结构的语法,被广泛应用于各种编程语言中,包括Java,用于文本处理、数据验证、搜索与替换等场景。本文将...

Global site tag (gtag.js) - Google Analytics