5、Pattern类和Matcher类:
1)Pattern类主要是表示一个规则的意思:正则表达式的规则要在Pattern类中使用。
2)Matcher类主要表示使用Pattern类指定好的验证规则。
public static Pattern
compile(Stringregex)
将给定的正则表达式编译到模式中。
public static
Pattern
compile(Stringregex intflags)
将给定的正则表达式编译到具有给定标志的模式中。
public Matcher
matcher(CharSequenceinput)
创建匹配给定输入与此模式的匹配器。
public String[]
split(CharSequenceinput)
围绕此模式的匹配拆分给定输入序列。
此方法的工作方式类似于使用给定的输入序列和限制参数零调用两参数 (java.lang.CharSequence, int) split} 方法。因此,得到的数组中不包括尾部空字符串。
例1:验证日期 1983-04-22
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegexDemo03 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "1983-04-22";//定义日期字符串
String pat = "\\d{4}-\\d{2}-\\d{2}";//定义正则表达式
Pattern p = Pattern.compile(pat);//实例化Pattern类
Matcher m = p.matcher(str);//实例化Matcher类
if(m.matches()){
System.out.println("日期格式正确!");
}else{
System.out.println("日期格式不正确!");
}
}
}
运行截图:
例二:将字符串进行拆分:
public String[] split(CharSequenceinput)
围绕此模式的匹配拆分给定输入序列。
此方法的工作方式类似于使用给定的输入序列和限制参数零调用两参数 (java.lang.CharSequence, int) split} 方法。因此,得到的数组中不包括尾部空字符串。
import java.util.regex.Pattern;
public class RegexDemo04 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//将字符串按数字进行拆分
String str = "A1B22C35255D4444E8460F630636";//定义字符串
String pat = "\\d+";//定义正则
Pattern p = Pattern.compile(pat);//实例化Pattern类
String s[] = p.split(str);//按数字拆分字符串
for(int i=0;i<s.length;i++){
System.out.print(s[i]+"\t");
}
}
}
运行截图:
例子3:字符串替换
public String replaceAll(Stringreplacement)
替换模式与给定替换字符串相匹配的输入序列的每个子序列。
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegexDemo04 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//将字符串中的数字进行替换为下划线
String str = "A1B22C35255D4444E8460F630636";//定义字符串
String pat = "\\d+";//定义正则
Pattern p = Pattern.compile(pat);//实例化Pattern类
Matcher m = p.matcher(str);
String newStr = m.replaceAll("_");
System.out.println(newStr);
}
}
运行截图:
分享到:
相关推荐
一个优秀的程序员必须知道
在Java编程语言中,正则表达式是一种强大的文本处理工具,用于模式匹配和字符串操作。在Java中,正则表达式主要通过`java.util.regex`包来实现,这个包提供了许多类,如`Pattern`, `Matcher`和`...
在Java中,`java.util.regex`包提供了支持正则表达式的类库,主要包括`Pattern`、`Matcher`和`PatternSyntaxException`等几个核心类。 #### 二、基础语法 1. **字符匹配**: - `.`:匹配任意单个字符。 - `\d`:...
在Java中,`java.util.regex`包提供了用于处理正则表达式的类库,主要包括`Pattern`、`Matcher`等类。 - **Pattern**: 表示编译后的正则表达式模式。 - **Matcher**: 用于执行正则表达式的匹配操作。 #### 三、...
这个验证器特别适用于程序员,他们可能需要在多种不同的编程语言中使用正则表达式,如JavaScript、Python、Java、C#等。每种语言虽然都支持正则表达式,但其语法和行为可能略有差异,因此验证器是一个极好的辅助工具...
以上就是Java常用类库的一些核心知识点,涵盖了字符串处理、系统交互、国际化、日期时间、数学计算、大数处理、对象复制、数组操作、比较和正则表达式以及定时任务等多个方面,这些都是Java编程中不可或缺的基础工具...
### Java 文件 I/O 与正则表达式 #### 一、Java 文件 I/O 系统概览 在《Java 编程第十三讲 IO 系统》这份文档中,作者 Harry Lee 对 Java 的输入输出(I/O)系统进行了全面而深入的讲解。Java I/O 系统是 Java ...
JavaVerbalExpressions是一个非常有用的Java库,专门设计用于简化复杂的正则表达式构建过程。在编程中,正则表达式(Regular Expression)是用于匹配字符串的强大工具,但它们的语法往往复杂且容易出错,尤其是当...
- **JSP**: Java服务器页面技术中的正则表达式应用。 - **PHP**: PHP内置了对正则表达式的支持。 - **VB.NET**: .NET框架中的Visual Basic.NET语言支持正则表达式。 - **VBScrip**: Visual Basic Scripting Edition...
Java的帮助文档会详细解释类库、API、语法结构等,对于开发者来说是必不可少的参考。 2. **jQuery**: jQuery是一个JavaScript库,它简化了HTML文档遍历、事件处理、动画以及Ajax交互。jQuery_CHM文件会涵盖选择器、...
在Android开发中,原生的Java库提供了`java.util.regex`包,包含`Pattern`和`Matcher`类来处理正则表达式。然而,火山封装类库对这些功能进行了优化和简化,使得开发者能够更方便地进行正则操作。 1. **火山正则...
本章节将介绍 Java 中的 10 个常用类库,包括随机数、日期时间、数学运算、正则表达式、大数字处理类等。 1. 随机数类(Random) Java 中提供了专门生成随机数的类 Random,位于 java.util 包中。Random 类有两个...
在这个特定的压缩包文件中,包含了一个名为“正则表达式系统教程.CHM”的文件,这表明我们将探讨的是Java中的正则表达式及其应用。 正则表达式(Regular Expression)是一种模式匹配工具,用于在文本字符串中进行...
Java常用类库是Java开发中的重要组成部分,它们提供了丰富的功能,极大地简化了程序员的工作。Java类库是由一系列预先编写好的类和接口组成的,这些类和接口涵盖了数据处理、网络通信、文件操作、线程管理等多个方面...
这里我们关注的是"java常用的帮助文档",这个压缩包中包含了四个关键部分:Java中文帮助文档、ext3.0帮助文档、jQuery帮助文档以及正则表达式帮助文档。这些文档对于Java开发者来说是极其宝贵的资源,它们提供了丰富...
java正则表达式提供了比较丰富的类库,大大简化了这个过程。下面列出常用的基本语法: * + ? ^ $ [] () | / \ \d \D \w \W {} {n} {n,m}等, 要注意的是“|”或符号。它可以匹配单个字符和字符串。如:t[aeio]n只...
"JAVA 正则表达式.pdf"是另一个关于Java正则表达式的文档,可能提供了更深入的实例和解析,对强化正则表达式使用技巧有很大帮助。 "CMD命令速查手册_cmd命令大全_cmd命令详解.pdf"介绍了Windows命令行工具CMD的常用...
- 常用类库的理解和应用,如java.io.*(用于文件和流的操作)。 - 图形用户界面(GUI)组件的使用,如Panel、Dialog等。 4. 高级特性 - 常用的运算符(如=, ==, &&, ++等)。 - 布尔逻辑表达式的构建和执行。 ...