千家信息网

Java中怎么用正则表达式

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章将为大家详细讲解有关Java中怎么用正则表达式,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。学习正则表达式,用Jdk1.4后的java.util.regex
千家信息网最后更新 2026年11月02日Java中怎么用正则表达式

这篇文章将为大家详细讲解有关Java中怎么用正则表达式,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

学习正则表达式,用Jdk1.4后的java.util.regex

模式:

我们来看一些更常用的表达式的种类

文字(Literal):表达式内任何不具有特殊意义的字符都被看作是一个文字,并与自身匹配。

量词(Quantifier):某些字符或表达式,它们被用来计算一个文字或分组可以在字符序列中出现的次

数,以便该序列与表达式匹配。分组是由圆括号内的一组字符指定的。
? 表示出现一次或根本不出现
* 表示出现零次或一次以上(含一次)
+ 表示出现一次或多次

字符类(Character class):一个字符类就是方括号内的一个字符集,其中,匹配可以是括号内的任意

一个字符。您可以把字符类与量词结合在一起,例如, [acegikmoqsuwy]* 将是只包含字母表中奇数字

母的任意字符序列。某些字符类是预先定义的:
d ― 数字(0 到 9)
D -- 非数字
s -- 空白字符,如制表符或换行符
S -- 非空白字符
w -- 单字字符(a 到 z、A 到 Z、0 到 9 以及下划线)
W -- 非单字字符(其它任意字符)

Posix 字符类(Posix character class):某些字符类仅在用于 US-ASCII 比较时才有效。例如:
p{Lower} ― 小写字符
p{Upper} ― 大写字符
p{ASCII} ― 所有 ASCII 字符
p{Alpha} ― 字母字符(p{Lower} 与 p{Upper} 相结合)
p{Digit} ― 从 0 到 9 的数字
p{Alnum} ― 字母数字字符

范围(Range):使用短线(dash)来指定包括一定范围字符的字符类。例如, [A-J] 表示从 A 到 J

的大写字母

否定(Negation):脱字符(^)否定字符类的内容。例如, [^A-J] 表示除 A 到 J 之外的任何字符。

反斜杠字符()在 String 常量中需要转义。
w+ 与 p{Alnum}+ 类似,但添加了下划线(_)。
反斜杠( .)代表句点。如果前面没有反斜杠,单独一个句点代表任意字符。
p{Alpha}{2, 3} 表示两个或三个字母字符


--------------------------------------------------------------------------------
java.util.regex是一个用正则表达式所订制的模式来对字符串进行匹配工作的类库包(其他:如

Jakarta-ORO )


它包括两个类: Pattern和 Matcher

Pattern 一个Pattern是一个正则表达式经编译后的表现模式。
Matcher 一个Matcher对象是一个状态机器,它依据Pattern对象做为匹配模式对字符串展开匹配检查。

一个正则表达式,也就是一串有特定意义的字符,必须首先要编译成为一个Pattern类的实例,这个

Pattern对象将会使用 matcher()方法来生成一个Matcher实例,接着便可以使用该 Matcher实例以编译

的正则表达式为基础对目标字符串进行匹配工作,多个Matcher是可以共用一个Pattern对象的。

在java.util.regex包里,我们仅需生成一个Pattern类,直接使用它的compile()

一个Matcher实例是被用来对目标字符串进行基于既有模式(也就是一个给定的Pattern所编译的正则表

达式)进行匹配查找的,所有往Matcher的输入都是通过CharSequence接口提供的,这样做的目的在于可

以支持对从多元化的数据源所提供的数据进行匹配工作。

★matches()/lookingAt ()/find():
一个Matcher对象是由一个Pattern对象调用其matcher()方法而生成的,一旦该Matcher对象生成,它就可

以进行三种不同的匹配查找操作:

matches()方法尝试对整个目标字符展开匹配检测,也就是只有整个目标字符串完全匹配时才返回真值。
lookingAt ()方法将检测目标字符串是否以匹配的子串起始。
find()方法尝试在目标字符串里查找下一个匹配子串。
以上三个方法都将返回一个布尔值来表明成功与否。

★replaceAll ()/appendReplacement()/appendTail():
Matcher类同时提供了四个将匹配子串替换成指定字符串的方法:

replaceAll()
replaceFirst()
appendReplacement()
appendTail()

使用方式
1。Pattern wordBreakPattern = Pattern.compile("模式");
2。Matcher lineMatcher = linePattern.matcher(需要匹配的字符串);
3。Match的函数如find/lookat等,检查结果

关于"Java中怎么用正则表达式"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

字符 表达式 字符串 正则 对象 方法 字母 模式 目标 实例 数字 生成 编译 也就是 序列 文字 斜杠 篇文章 工作 三个 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 花魁咖啡 互联网是第几次科技革命的成果 互联网科技公司起名 科技互联网龙头 智能科技公司是互联网公司吗 互联网 科技创新 互联网科技的英文 未来的互联网科技 互联网高科技企业 盛创互联网科技有限公司 汉立互联网科技有限公司联系电话 互联网科技商业 新兴科技互联网创新大赛颁奖典礼 苏州铭阳互联网科技有限公司 元气玛特互联网科技公司是外包吗 北京市互联网新科技 广州互联网高科技取餐柜 上海乐五互联网科技有限公司 互联网科技平台产品运营 互联网大会出现的黑科技 北京路客互联网科技有限公司 中正互联网科技招聘 深圳互联网科技怎么样 深圳国际航运科技和互联网 互联网大会黑科技排名 互联网科技与大数据专业 本届互联网博览会上的黑科技 群盈汇互联网科技有限公司 互联网金融科技元年 科技和互联网行业的特点
0