`

java > 正则 / 贪婪匹配 / 替换

    博客分类:
  • java
 
阅读更多
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Test {
	public static void main(String[] args) {
		String str = "<biao><>c<b>";
		Pattern pattern;
		Matcher matcher;
		
		// 贪婪: 最长匹配 .* : 输出: <biao><>c<b>
		pattern = Pattern.compile("<.*>");
		matcher = pattern.matcher(str);
		while (matcher.find()) {
			System.out.println(matcher.group());
		}
		
		// 不知是否非贪婪 .*? : 输出: <biao>, <>, <b>
		pattern = Pattern.compile("<.*?>");
		matcher = pattern.matcher(str);
		while (matcher.find()) {
			System.out.println(matcher.group());
		}
		
		// 使用组, 输出<>里的内容, 输出: 'biao', ' ', 'b'
		// 0组代表整个表达式, 子组从1开始
		pattern = Pattern.compile("<(.*?)>");
		matcher = pattern.matcher(str);
		while (matcher.find()) {
			System.out.println(matcher.group(1));
		}		



		///// 然后是  正则匹配替换
		String str = "<mft1><mft2><mft3>";		
		Pattern pattern;
		Matcher matcher;
		pattern = Pattern.compile("<(.*?)>");
		matcher = pattern.matcher(str);
		matcher.find();
		System.out.println(matcher.group(1));
		
		/*
		while (matcher.find()) {
			System.out.println(matcher.group(1));			
		}
		*/
		

		




	}
}
 
分享到:
评论

相关推荐

    Java JS正则表达式大全

    对于更复杂的模式,如贪婪匹配和非贪婪匹配,`*?`、`+?`、`??`等非贪婪量词可以帮助控制匹配尽可能少的字符。例如,`/a.*b/`会匹配所有从"a"到"b"的字符串,而`/a.*?b/`则只匹配最短的从"a"到"b"的字符串。 在...

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

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

    java正则表达式.zip

    Java正则表达式是Java编程语言中用于处理字符串的强大工具,它基于模式匹配的概念,能够高效地进行文本搜索、替换和解析。在Java中,正则表达式主要通过`java.util.regex`包来实现,提供了Pattern和Matcher两个核心...

    java 正则匹配所有 {},并取出所有符合的字符串。

    这个正则表达式的含义是:查找所有以左大括号 `{` 开始,紧接着任何数量的任意字符(非贪婪匹配),然后以右大括号 `}` 结束的序列。 2. **编译正则表达式**: 使用`Pattern.compile()`方法将正则表达式编译成`...

    学习Java正则表达式(匹配、替换、查找)

    Java正则表达式是编程语言Java中用于处理文本的强大工具,它可以用来匹配、替换、查找和分割字符串。在本文中,我们将深入探讨这些操作,并通过示例代码进行演示。 首先,我们来看匹配(matches)。`matches()` ...

    正则截取TD里面包含的数据

    - 这个正则表达式用于匹配一个表格行中包含多个`&lt;td&gt;`标签的情况,可以依次捕获每个`&lt;td&gt;`标签内的内容。 #### 使用正则表达式提取`&lt;td&gt;`数据的具体步骤 1. **理解HTML结构**:首先需要明确目标网页的HTML结构,...

    java正则表达式.pdf

    ### Java正则表达式详解 #### 一、引言 正则表达式是计算机科学中的一个强大工具,用于处理文本数据。随着Java的发展,自J2SE 1.4版本开始,Java正式引入了对正则表达式的支持,并提供了一系列功能强大的API。本文...

    java正则表达式匹配网页所有网址和链接文字的示例

    `是非贪婪匹配,尽可能少地匹配字符,直到遇到下一个`/a&gt;`。 - 如果需要匹配网址,可以使用类似`&lt;a href="?'?http://[a-zA-Z0-9]+/.[a-zA-Z0-9]+/.[a-zA-Z]+/?[/.?[/S|/s]]+[a&gt;]$`的正则表达式,它会捕获以`...

    Java正则表达式详细讲解

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

    java正则表达式详解(PDF)

    Java正则表达式是Java编程语言中的一个强大工具,用于处理字符串模式匹配和搜索替换操作。它是基于Perl和POSIX正则表达式的实现,提供了一种灵活且强大的方式来处理文本数据。本文件"java正则表达式详解(PDF)"深入...

    Java正则表达式快速学习

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

    JAVA正则表达式概述视频

    Java正则表达式是Java编程语言中的一个强大工具,用于处理字符串模式匹配和搜索替换操作。在本视频教程中,讲师逐步从基础到高级,详细介绍了Java正则表达式的使用方法,非常适合初学者入门。 首先,我们要理解正则...

    java正则表达式实例教程

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

    java常用正则表达式

    3. 非贪婪匹配:在量词后加 `?` 可使匹配尽可能少的字符,如 `.*?`。 4. 零宽断言:`(?=pattern)` 正向前瞻,`(?&lt;!pattern)` 负向前瞻,不消耗字符。 5. 正则表达式函数:JavaScript中的 `match()`、`search()`、`...

    java正则表达式的使用示例

    非贪婪匹配 默认情况下,量词是贪婪的,会尽可能多地匹配字符。添加问号`?`使其变为非贪婪,只匹配最少的字符。例如,`a+?`将匹配尽可能少的'a'。 ### 8. 高级特性 Java正则表达式还支持正向前瞻和正向后顾断言...

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

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

    Java正则表达式入门 + HTMLParser使用详解

    Java正则表达式是编程语言Java中用于处理字符串的强大工具,它允许程序员通过简洁的语法进行复杂的文本匹配、查找、替换和验证。自从Java 1.4引入`java.util.regex`包以来,Java程序员就可以方便地使用正则表达式来...

    java正则与程序优化

    5. **非贪婪匹配**:添加`?`使其变为非贪婪,如`.*?`会尽可能少地匹配字符。 三、程序优化 1. **算法优化**:选择合适的数据结构和算法,避免时间复杂度过高的操作。 2. **局部变量**:尽量使用局部变量代替成员...

    Java正则表达式详解 doc格式文档

    Java正则表达式是一个强大且灵活的工具,通过理解并熟练运用字符类、量词、边界匹配、选择与分组等基本概念,以及预查、后顾和非贪婪匹配等高级特性,开发者可以处理复杂的文本匹配和处理任务。在实际编程中,结合...

    Java正则表达式入门介绍课件

    Java正则表达式是编程语言Java中用于处理字符串的强大工具,它允许程序员通过模式匹配来查找、替换或提取文本。正则表达式在各种场景下都有广泛应用,如数据验证、文本搜索与替换等。本课件旨在为初学者提供一个Java...

Global site tag (gtag.js) - Google Analytics