`
isiqi
  • 浏览: 16623640 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

Java正则表达式类的各种例子使用

阅读更多

flag的取值范围如下:

Pattern.CANON_EQ:当且仅当两个字符的"正规分解(canonical decomposition)"都完全相同的情况下,才认定匹配。比如用了这个标志之后,表达式"a\u030A"会匹配"?"。默认情况下,不考虑"规范相等性(canonical equivalence)"。

Pattern.CASE_INSENSITIVE(?i): 默认情况下,大小写不明感的匹配只适用于US-ASCII字符集。这个标志能让表达式忽略大小写进行匹配。要想对Unicode字符进行大小不明感的匹配,只要将UNICODE_CASE与这个标志合起来就行了。

Pattern.COMMENTS(?x):在这种模式下,匹配时会忽略(正则表达式里的)空格字符(译者注:不是指表达式里的"\\s",而是指表达式里的空格,tab,回车之类)。注释从#开始,一直到这行结束。可以通过嵌入式的标志来启用Unix行模式。

Pattern.DOTALL(?s):在这种模式下,表达式'.'可以匹配任意字符,包括表示一行的结束符。默认情况下,表达式'.'不匹配行的结束符。

Pattern.MULTILINE(?m):在这种模式下,'^'和'$'分别匹配一行的开始和结束。此外,'^'仍然匹配字符串的开始,'$'也匹配字符串的结束。默认情况下,这两个表达式仅仅匹配字符串的开始和结束。

Pattern.UNICODE_CASE(?u):在这个模式下,如果你还启用了CASE_INSENSITIVE标志,那么它会对Unicode字符进行大小写不明感的匹配。默认情况下,大小写不敏感的匹配只适用于US-ASCII字符集。

Pattern.UNIX_LINES(?d):在这个模式下,只有'\n'才被认作一行的中止,并且与'.','^',以及'$'进行匹配。

抛开空泛的概念,下面写出几个简单的Java正则用例:

◆比如,在字符串包含验证时

//查找以Java开头,任意结尾的字符串
Pattern pattern = Pattern.compile("^Java.*");
Matcher matcher = pattern.matcher("Java不是人");
boolean b= matcher.matches();
//当条件满足时,将返回true,否则返回false
System.out.println(b);

◆以多条件分割字符串时

Pattern pattern = Pattern.compile("[, |]+");
String[] strs = pattern.split("Java Hello World Java,Hello,,World|Sun");
for (int i=0;iSystem.out.println(strs[i]);
}

◆文字替换(首次出现字符)

Pattern pattern = Pattern.compile("正则表达式");
Matcher matcher = pattern.matcher("正则表达式 Hello World,正则表达式 Hello World");
//替换第一个符合正则的数据
System.out.println(matcher.replaceFirst("Java"));

◆文字替换(全部)

Pattern pattern = Pattern.compile("正则表达式");
Matcher matcher = pattern.matcher("正则表达式 Hello World,正则表达式 Hello World");
//替换第一个符合正则的数据
System.out.println(matcher.replaceAll("Java"));

◆文字替换(置换字符)

Pattern pattern = Pattern.compile("正则表达式");
Matcher matcher = pattern.matcher("正则表达式 Hello World,正则表达式 Hello World ");
StringBuffer sbr = new StringBuffer();
while (matcher.find()) {
matcher.appendReplacement(sbr, "Java");
}
matcher.appendTail(sbr);
System.out.println(sbr.toString());

分享到:
评论

相关推荐

    java正则表达式使用例子

    Java正则表达式是Java编程语言中用于处理字符串的强大工具,它允许我们通过模式匹配来查找、替换或分割文本。在Android开发中,正则表达式尤其重要,因为它们可以帮助我们验证用户输入、处理文本数据或者进行复杂的...

    JAVA正则表达式大全

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

    java正则表达式及例子 pdf

    Java正则表达式是Java编程语言中用于处理字符串的强大工具,...通过阅读《Java 正则表达式的总结和一些小例子.pdf》和《Java正则表达式详解.pdf》,你将能够深入学习和实践更多正则表达式的用法,进一步提升编程技能。

    常用正则表达式HTML,JAVA合集

    这个合集提供的HTML和Java正则表达式实例,为开发者提供了一个快速参考的工具,帮助他们在开发过程中快速有效地实现数据验证功能。理解并熟练运用这些正则表达式,对于提高代码质量和用户体验都有极大的帮助。在实际...

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

    这个“java正则表达式截取demo”提供了一个可以直接运行的示例,帮助开发者理解如何在Java中使用正则表达式进行字符串截取。 在Java中,`java.util.regex`包提供了正则表达式相关的类,如`Pattern`和`Matcher`。`...

    java正则表达式 regx

    例如,以下代码展示了如何使用Java正则表达式检查字符串是否符合社会安全号码的格式: ```java import java.util.regex.*; public class Main { public static void main(String[] args) { String ssn = "123-12...

    Java根据正则表达式生成字符串—Xeger,automaton

    在Java中,`java.util.regex` 包提供了Pattern和Matcher类来处理正则表达式。然而,对于生成符合正则表达式的字符串,标准库并不提供直接支持。这时,我们可以引入第三方库,如`org.pcollections.Xeger` 和 `...

    Java正则表达式详解.pdf

    根据提供的文件信息,本文将详细介绍Java正则表达式的概念、基本语法及应用场景,并结合Jakarta-ORO库来展示如何在Java中应用正则表达式。 ### 一、正则表达式简介 #### 1.1 什么是正则表达式? 正则表达式是一种...

    java_zhengze.rar_正则表达式_正则表达式 java

    本资料"java_zhengze.rar"提供了对Java正则表达式的详细讲解,包括基本概念、元字符、预定义字符类以及各种匹配操作,对于Java开发者来说是一份非常实用的学习资源。 首先,我们来了解一下正则表达式的基石——元...

    Java正则表达式的总结和一些小例子

    Java 正则表达式的总结和一些小例子 Java 正则表达式是 Java 编程语言中一个非常重要的组件,它可以用于文本显示、数据表示、查找键和许多其他目的。从 Java 1.4 开始,Java 核心 API 就引入了 java.util.regex ...

    java-正则表达式-分组引用介绍

    ### Java中的正则表达式:分组引用介绍 #### 概述 正则表达式是计算机科学中一种非常强大的文本处理工具,在Java等编程语言中广泛应用于字符串匹配、搜索替换等场景。当需要对正则表达式的部分结果进行进一步处理...

    Java正则表达式的使用实例

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

    Java正则表达式简单应用

    Java正则表达式是编程语言Java中用于处理字符串的强大工具,它允许我们通过模式匹配来查找、替换或分割文本。这篇博客将带你了解Java正则表达式的简单应用,并结合两个示例文件`parse_redbend_log`和`eyesaver`进行...

    java Xeger 根据正则表达式生成满足的随机数据

    Xeger是基于Java的org.apache.commons.text.RandomStringGenerator类和org.apache.commons.lang3.RandomStringUtils库的一个扩展,专为匹配正则表达式而设计。这个功能在测试、数据模拟和随机数据生成场景中尤其有用...

    Java正则表达式使用

    在JDK的后续版本中,正则表达式被内建支持,主要通过`java.util.regex`包中的类,如`Pattern`和`Matcher`来使用。 - `Pattern`类用于编译正则表达式,并创建模式对象。`Matcher`类则根据模式对象在给定输入字符串中...

    java 正则表达式大全 菜鸟也能玩转

    ### Java正则表达式大全:菜鸟也能玩转 在Java编程语言中,正则表达式是一种强大的工具,用于处理字符串的搜索、替换等操作。它能够帮助开发者更加灵活...希望本文能帮助你在日常开发中更加高效地使用Java正则表达式。

    JAVA及VB的一些正则表达式使用例子

    在JAVA中,可以使用Pattern和Matcher类来编译和执行正则表达式。例如: ```java import java.util.regex.*; public class RegexExample { public static void main(String[] args) { String input = "Hello, ...

Global site tag (gtag.js) - Google Analytics