news 2026/4/18 5:14:26

Java 正则表达式

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Java 正则表达式

Java 正则表达式

正则表达式定义了字符串的模式。

正则表达式可以用来搜索、编辑或处理文本。

正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别。

Java 提供了 java.util.regex 包,它包含了 Pattern 和 Matcher 类,用于处理正则表达式的匹配操作。

正则表达式实例

一个字符串其实就是一个简单的正则表达式,例如Hello World正则表达式匹配 "Hello World" 字符串。

.(点号)也是一个正则表达式,它匹配任何一个字符如:"a" 或 "1"。

下表列出了一些正则表达式的实例及描述:

正则表达式描述

this is text

匹配字符串 "this is text"

this\s+is\s+text

注意字符串中的\s+

匹配单词 "this" 后面的\s+可以匹配多个空格,之后匹配 is 字符串,再之后\s+匹配多个空格然后再跟上 text 字符串。

可以匹配这个实例:this is text

^\d+(\.\d+)?

^ 定义了以什么开始

\d+ 匹配一个或多个数字

? 设置括号内的选项是可选的

\. 匹配 "."

可以匹配的实例:"5", "1.5" 和 "2.21"。

更多正则表达式内容可以参考:正则表达式 - 教程


java.util.regex 包

java.util.regex 包是 Java 标准库中用于支持正则表达式操作的包。

java.util.regex 包主要包括以下三个类:

  • Pattern 类:

    pattern 对象是一个正则表达式的编译表示。Pattern 类没有公共构造方法。要创建一个 Pattern 对象,你必须首先调用其公共静态编译方法,它返回一个 Pattern 对象。该方法接受一个正则表达式作为它的第一个参数。

  • Matcher 类:

    Matcher 对象是对输入字符串进行解释和匹配操作的引擎。与Pattern 类一样,Matcher 也没有公共构造方法。你需要调用 Pattern 对象的 matcher 方法来获得一个 Matcher 对象。

  • PatternSyntaxException:

    PatternSyntaxException 是一个非强制异常类,它表示一个正则表达式模式中的语法错误。

以下实例中使用了正则表达式.*runoob.*用于查找字符串中是否包了runoob子串:

实例

import java.util.regex.*; class RegexExample1{ public static void main(String[] args){ String content = "I am noob " + "from runoob.com."; String pattern = ".*runoob.*"; boolean isMatch = Pattern.matches(pattern, content); System.out.println("字符串中是否包含了 'runoob' 子字符串? " + isMatch); } }

实例输出结果为:

vk.com/topic-234777237_55563774
vk.com/topic-234777283_54529255
vk.com/topic-234777242_54900130
vk.com/topic-234777233_54529254
vk.com/topic-234777240_55333695
vk.com/topic-234777259_54977277
vk.com/topic-234777239_54977278
vk.com/topic-234777247_55563772
vk.com/topic-234676304_54238876
vk.com/topic-234777289_54977276
vk.com/topic-234777238_54730228
vk.com/topic-234676753_54529253
vk.com/topic-234777262_54900128
vk.com/topic-234777234_54238874
vk.com/topic-234777327_55563771
vk.com/topic-234676330_55333693
vk.com/topic-234761455_54122434
vk.com/topic-234777253_54529252
vk.com/topic-234777241_55827710
vk.com/topic-234777249_54977273
vk.com/topic-234777301_55827709
vk.com/topic-234777233_54529250
vk.com/topic-234777259_54977270
vk.com/topic-234777239_54977271
vk.com/topic-234777238_54730226
vk.com/topic-234777262_54900121
vk.com/topic-234777281_55827706
vk.com/topic-234466447_55563761
vk.com/topic-234777261_55827704
vk.com/topic-234777281_55827699
vk.com/topic-234466447_55563751
vk.com/topic-234777261_55827695
vk.com/topic-234676751_55827693
vk.com/topic-234777281_55827691
vk.com/topic-234777275_54122419
vk.com/topic-234466542_54900112
vk.com/topic-234756823_54529236
vk.com/topic-234777353_54529235
vk.com/topic-234466447_55563744
vk.com/topic-234253046_54599615
vk.com/topic-234777261_55827688
vk.com/topic-234777282_54900110
vk.com/topic-234777360_55333674
vk.com/topic-234777284_54238851
vk.com/topic-234466454_54238850
vk.com/topic-234777264_54238849
vk.com/topic-234777285_54122418
vk.com/topic-234777263_54529232
vk.com/topic-234777358_54730213
vk.com/topic-234252598_54730212
vk.com/topic-234676751_55827684
vk.com/topic-234777296_54599613
vk.com/topic-234757179_54977252
vk.com/topic-234777329_54977251
vk.com/topic-234777278_54730211
vk.com/topic-234777299_54977249
vk.com/topic-234777260_55333672
vk.com/topic-234676146_54599611
vk.com/topic-234777281_55827681
vk.com/topic-234777286_54599610
vk.com/topic-234777275_54122416
vk.com/topic-234777279_54977247
vk.com/topic-234466542_54900105
vk.com/topic-234777277_55563740
vk.com/topic-234756823_54529231
vk.com/topic-234777269_54977244
vk.com/topic-234777353_54529230
vk.com/topic-234777258_54730208
vk.com/topic-234777247_55563738
vk.com/topic-234777257_55563739
vk.com/topic-234777272_54900103
vk.com/topic-234777287_55563737
vk.com/topic-234777325_54122415
vk.com/topic-234466447_55563736
vk.com/topic-234777246_54599609
vk.com/topic-234777261_55827679
vk.com/topic-234253046_54599608
vk.com/topic-234777282_54900099
vk.com/topic-234777267_55563735
vk.com/topic-234761489_54977243
vk.com/topic-234777360_55333670
vk.com/topic-234777270_55333669
vk.com/topic-234777266_54599607
vk.com/topic-234777284_54238844
vk.com/topic-234466454_54238843
vk.com/topic-234777264_54238842
vk.com/topic-234777236_54599606
vk.com/topic-234777294_54238841
vk.com/topic-234250866_54599605
vk.com/topic-234777298_54730207
vk.com/topic-234777285_54122413
vk.com/topic-234777263_54529229
vk.com/topic-234777358_54730206
vk.com/topic-234761455_54122412
vk.com/topic-234777248_54730205
vk.com/topic-234777288_54730204
vk.com/topic-234252598_54730203
vk.com/topic-234777296_54599603
vk.com/topic-234777250_55333668
vk.com/topic-234777251_55827677
vk.com/topic-234676751_55827678
vk.com/topic-234777235_54122411
vk.com/topic-234757179_54977242
vk.com/topic-234757493_54529228
vk.com/topic-234777329_54977241
vk.com/topic-234777278_54730202
vk.com/topic-234676653_54529225
vk.com/topic-234777256_54599602
vk.com/topic-234777299_54977240
vk.com/topic-234676143_54529224
vk.com/topic-234777260_55333666
vk.com/topic-234777254_54238838
vk.com/topic-234777255_54122410
vk.com/topic-234777244_54238837
vk.com/topic-234676146_54599601
vk.com/topic-234777243_54529223
vk.com/topic-234777281_55827675
vk.com/topic-234777245_54122408
vk.com/topic-234777252_54900097
vk.com/topic-234777286_54599600
vk.com/topic-234777275_54122407
vk.com/topic-234777279_54977238
vk.com/topic-234777240_55333665
vk.com/topic-234777237_55563731
vk.com/topic-234777277_55563730
vk.com/topic-234777249_54977237
vk.com/topic-234777353_54529219
vk.com/topic-234777283_54529220
vk.com/topic-234756823_54529218
vk.com/topic-234466542_54900096
vk.com/topic-234777242_54900095
vk.com/topic-234777269_54977236
vk.com/topic-234777258_54730198
vk.com/topic-234676304_54238833
vk.com/topic-234777257_55563727
vk.com/topic-234777272_54900092
vk.com/topic-234777247_55563728
vk.com/topic-234777287_55563726
vk.com/topic-234466447_55563725
vk.com/topic-234777325_54122405
vk.com/topic-234777289_54977232
vk.com/topic-234777246_54599597
vk.com/topic-234777261_55827674
vk.com/topic-234253046_54599598
vk.com/topic-234777282_54900091
vk.com/topic-234777234_54238832
vk.com/topic-234777327_55563723
vk.com/topic-234777301_55827672
vk.com/topic-234777267_55563722
vk.com/topic-234761489_54977231
vk.com/topic-234777360_55333661
vk.com/topic-234777270_55333663
vk.com/topic-234777262_54900089
vk.com/topic-234777284_54238828
vk.com/topic-234777266_54599594
vk.com/topic-234676330_55333662
vk.com/topic-234466454_54238830
vk.com/topic-234777264_54238829
vk.com/topic-234777236_54599593
vk.com/topic-234250866_54599592
vk.com/topic-234777298_54730197
vk.com/topic-234777285_54122403
vk.com/topic-234777263_54529216
vk.com/topic-234761455_54122402
vk.com/topic-234777358_54730196
vk.com/topic-234777248_54730195
vk.com/topic-234777288_54730194
vk.com/topic-234777294_54238827
vk.com/topic-234252598_54730192
vk.com/topic-234777296_54599589
vk.com/topic-234676751_55827671
vk.com/topic-234777250_55333659
vk.com/topic-234777235_54122400
vk.com/topic-234777251_55827670
vk.com/topic-234757493_54529213
vk.com/topic-234757179_54977230
vk.com/topic-234777329_54977229
vk.com/topic-234777278_54730190
vk.com/topic-234676653_54529212
vk.com/topic-234777256_54599586
vk.com/topic-234676143_54529211
vk.com/topic-234777299_54977228
vk.com/topic-234777260_55333656
vk.com/topic-234777254_54238824
vk.com/topic-234777253_54529210
vk.com/topic-234777255_54122398
vk.com/topic-234777244_54238823
vk.com/topic-234777241_55827668
vk.com/topic-234676146_54599585
vk.com/topic-234777243_54529209
vk.com/topic-234777281_55827667
vk.com/topic-234777252_54900087
vk.com/topic-234777286_54599583
vk.com/topic-234777245_54122395
vk.com/topic-234777279_54977226
vk.com/topic-234777275_54122393
vk.com/topic-234777237_55563717
vk.com/topic-234777249_54977224
vk.com/topic-234777240_55333654
vk.com/topic-234777277_55563716
vk.com/topic-234777283_54529208
vk.com/topic-234777353_54529207
vk.com/topic-234756823_54529206
vk.com/topic-234466542_54900085
vk.com/topic-234777233_54529205
vk.com/topic-234777239_54977222
vk.com/topic-234777242_54900084
vk.com/topic-234777269_54977221
vk.com/topic-234777259_54977220
vk.com/topic-234777258_54730188
vk.com/topic-234777272_54900083
vk.com/topic-234777257_55563715
vk.com/topic-234676304_54238821
vk.com/topic-234777247_55563713
vk.com/topic-234777287_55563714
vk.com/topic-234777238_54730187
vk.com/topic-234777325_54122391
vk.com/topic-234777289_54977219
vk.com/topic-234253046_54599580
vk.com/topic-234777246_54599579
vk.com/topic-234676753_54529204
vk.com/topic-234777282_54900082
vk.com/topic-234777234_54238820
vk.com/topic-234777327_55563712
vk.com/topic-234777267_55563711
vk.com/topic-234761489_54977218
vk.com/topic-234777270_55333652
vk.com/topic-234777262_54900081
vk.com/topic-234777266_54599576
vk.com/topic-234777301_55827663
vk.com/topic-234676330_55333651
vk.com/topic-234466454_54238819
vk.com/topic-234777264_54238818
vk.com/topic-234777360_55333650
vk.com/topic-234777236_54599575
vk.com/topic-234250866_54599574
vk.com/topic-234777284_54238817
vk.com/topic-234777298_54730186
vk.com/topic-234777285_54122389
vk.com/topic-234777263_54529203
vk.com/topic-234761455_54122388
vk.com/topic-234756922_54900080
vk.com/topic-234777358_54730185
vk.com/topic-234777288_54730183
vk.com/topic-234777248_54730182
vk.com/topic-234777294_54238815
vk.com/topic-234252598_54730181
vk.com/topic-234676751_55827661
vk.com/topic-234777250_55333649
vk.com/topic-234777296_54599573
vk.com/topic-234777235_54122386
vk.com/topic-234777251_55827660
vk.com/topic-234757179_54977216
vk.com/topic-234777329_54977215
vk.com/topic-234777278_54730180
vk.com/topic-234757493_54529201
vk.com/topic-234676653_54529202
vk.com/topic-234777256_54599571
vk.com/topic-234676143_54529199
vk.com/topic-234777299_54977213
vk.com/topic-234777254_54238812
vk.com/topic-234777260_55333645
vk.com/topic-234777253_54529198
vk.com/topic-234777244_54238811
vk.com/topic-234777255_54122385
vk.com/topic-234777241_55827657
vk.com/topic-234676146_54599570
vk.com/topic-234777243_54529196
vk.com/topic-234777281_55827656
vk.com/topic-234777252_54900076
vk.com/topic-234777286_54599568
vk.com/topic-234777245_54122384
vk.com/topic-234777279_54977210
vk.com/topic-234777249_54977209
vk.com/topic-234777277_55563703
vk.com/topic-234777275_54122383
vk.com/topic-234777237_55563702
vk.com/topic-234777283_54529194
vk.com/topic-234777240_55333644
vk.com/topic-234777353_54529193
vk.com/topic-234756823_54529192
vk.com/topic-234466542_54900075
vk.com/topic-234777233_54529191
vk.com/topic-234777242_54900073
vk.com/topic-234777239_54977207
vk.com/topic-234777269_54977206
vk.com/topic-234777259_54977205
vk.com/topic-234777258_54730177
vk.com/topic-234777257_55563699
vk.com/topic-234676304_54238807
vk.com/topic-234777287_55563698
vk.com/topic-234777272_54900072
vk.com/topic-234777238_54730176
vk.com/topic-234777325_54122381
vk.com/topic-234777289_54977204
vk.com/topic-234777247_55563697
vk.com/topic-234253046_54599566
vk.com/topic-234777246_54599567
vk.com/topic-234676753_54529189
vk.com/topic-234777282_54900070
vk.com/topic-234777234_54238804
vk.com/topic-234777327_55563696
vk.com/topic-234777267_55563695
vk.com/topic-234761489_54977201
vk.com/topic-234777270_55333639
vk.com/topic-234777262_54900068
vk.com/topic-234777301_55827652
vk.com/topic-234676330_55333638
vk.com/topic-234777266_54599565
vk.com/topic-234466454_54238803
vk.com/topic-234777264_54238802
vk.com/topic-234777360_55333637
vk.com/topic-234777236_54599564
vk.com/topic-234777284_54238800
vk.com/topic-234250866_54599563
vk.com/topic-234777285_54122380
vk.com/topic-234777298_54730175
vk.com/topic-234777263_54529186
vk.com/topic-234761455_54122379
vk.com/topic-234777288_54730174
vk.com/topic-234756922_54900067
vk.com/topic-234777358_54730173
vk.com/topic-234777248_54730172
vk.com/topic-234777294_54238801
vk.com/topic-234252598_54730171
vk.com/topic-234777250_55333635
vk.com/topic-234777296_54599562
vk.com/topic-234777235_54122378
vk.com/topic-234777251_55827651
vk.com/topic-234757179_54977199
vk.com/topic-234777329_54977197
vk.com/topic-234777278_54730170
vk.com/topic-234676653_54529183
vk.com/topic-234757493_54529182
vk.com/topic-234777256_54599561
vk.com/topic-234676143_54529181
vk.com/topic-234777299_54977196
vk.com/topic-234777260_55333632
vk.com/topic-234777254_54238798
vk.com/topic-234777253_54529180
vk.com/topic-234777244_54238797
vk.com/topic-234777241_55827649
vk.com/topic-234777255_54122377
vk.com/topic-234676146_54599560
vk.com/topic-234777243_54529178
vk.com/topic-234777281_55827647
vk.com/topic-234777252_54900066
vk.com/topic-234777286_54599559
vk.com/topic-234777245_54122376
vk.com/topic-234777279_54977194
vk.com/topic-234777249_54977193
vk.com/topic-234777277_55563689
vk.com/topic-234777237_55563688
vk.com/topic-234777283_54529176
vk.com/topic-234777240_55333630
vk.com/topic-234777233_54529175
vk.com/topic-234777239_54977192
vk.com/topic-234777242_54900063
vk.com/topic-234777269_54977191
vk.com/topic-234777259_54977190
vk.com/topic-234777258_54730165
vk.com/topic-234777257_55563686
vk.com/topic-234676304_54238792
vk.com/topic-234777287_55563685
vk.com/topic-234777272_54900062
vk.com/topic-234777238_54730164
vk.com/topic-234777325_54122374
vk.com/topic-234777289_54977188
vk.com/topic-234777247_55563684
vk.com/topic-234777246_54599557
vk.com/topic-234676753_54529173
vk.com/topic-234777234_54238791
vk.com/topic-234777327_55563682
vk.com/topic-234777267_55563681
vk.com/topic-234761489_54977185
vk.com/topic-234777270_55333629
vk.com/topic-234777301_55827645
vk.com/topic-234777262_54900060
vk.com/topic-234676330_55333628
vk.com/topic-234777266_54599554
vk.com/topic-234777236_54599553
vk.com/topic-234250866_54599552
vk.com/topic-234777298_54730163
vk.com/topic-234761455_54122372
vk.com/topic-234777288_54730162
vk.com/topic-234756922_54900059

字符串中是否包含了 'runoob' 子字符串? true


捕获组

捕获组是把多个字符当一个单独单元进行处理的方法,它通过对括号内的字符分组来创建。

例如,正则表达式 (dog) 创建了单一分组,组里包含"d","o",和"g"。

捕获组是通过从左至右计算其开括号来编号。例如,在表达式((A)(B(C))),有四个这样的组:

  • ((A)(B(C)))
  • (A)
  • (B(C))
  • (C)

可以通过调用 matcher 对象的 groupCount 方法来查看表达式有多少个分组。groupCount 方法返回一个 int 值,表示matcher对象当前有多个捕获组。

还有一个特殊的组(group(0)),它总是代表整个表达式。该组不包括在 groupCount 的返回值中。

实例

下面的例子说明如何从一个给定的字符串中找到数字串:

RegexMatches.java 文件代码:

import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexMatches { public static void main( String[] args ){ // 按指定模式在字符串查找 String line = "This order was placed for QT3000! OK?"; String pattern = "(\\D*)(\\d+)(.*)"; // 创建 Pattern 对象 Pattern r = Pattern.compile(pattern); // 现在创建 matcher 对象 Matcher m = r.matcher(line); if (m.find( )) { System.out.println("Found value: " + m.group(0) ); System.out.println("Found value: " + m.group(1) ); System.out.println("Found value: " + m.group(2) ); System.out.println("Found value: " + m.group(3) ); } else { System.out.println("NO MATCH"); } } }

以上实例编译运行结果如下:

Found value: This order was placed for QT3000! OK? Found value: This order was placed for QT Found value: 3000 Found value: ! OK?

正则表达式语法

在其他语言中,\\ 表示:我想要在正则表达式中插入一个普通的(字面上的)反斜杠,请不要给它任何特殊的意义。

在 Java 中,\\ 表示:我要插入一个正则表达式的反斜线,所以其后的字符具有特殊的意义。

所以,在其他的语言中(如 Perl),一个反斜杠 \ 就足以具有转义的作用,而在 Java 中正则表达式中则需要有两个反斜杠才能被解析为其他语言中的转义作用。也可以简单的理解在 Java 的正则表达式中,两个 \\ 代表其他语言中的一个 \,这也就是为什么表示一位数字的正则表达式是 \\d,而表示一个普通的反斜杠是 \\。

System.out.print("\\"); // 输出为 \ System.out.print("\\\\"); // 输出为 \\
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/17 18:30:00

15、Irrlicht 3D 引擎开发与部署全解析

Irrlicht 3D 引擎开发与部署全解析 1. Irrlicht 应用部署基础 在使用 Xcode 编译 Irrlicht 应用时,Xcode 会负责保持应用程序包的更新。但要确保像模型、图标或图形等资源被列入“Copy Bundle Resources”。若未列入,应用将无法显示这些资源。 1.1 创建通用应用及兼容性处…

作者头像 李华
网站建设 2026/4/13 2:42:16

手把手实现ModbusRTU串行通信(工业场景)

手把手实现ModbusRTU串行通信:工业现场的“硬核”实战指南在一间嘈杂的生产车间里,一台PLC正通过一根双绞线与十几台设备“低声对话”。没有Wi-Fi,不依赖以太网交换机,甚至不需要IP地址——它靠的,是一套诞生于1979年的…

作者头像 李华
网站建设 2026/4/16 20:22:58

利用nanopb压缩物联网传输数据:快速理解

让每一比特都物尽其用:用 nanopb 打造高效物联网通信你有没有遇到过这样的场景?一个温湿度传感器,每30秒上报一次数据,原本只是{"temp":25.3,"humid":60}这么点信息,但走JSON协议一发,…

作者头像 李华
网站建设 2026/4/8 19:22:45

django基于大数据的高血压人群分析系统_dcb7986h_055

文章目录具体实现截图主要技术与实现手段关于我本系统开发思路java类核心代码部分展示结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!具体实现截图 同行可拿货,招校园代理 django基于大数据的高血压人群分析系统_dcb7986h_055 …

作者头像 李华
网站建设 2026/4/17 19:24:43

LangFlow Alibaba Cloud CMS监控服务

LangFlow 与阿里云 CMS 构建 AI 工作流可观测性闭环 在生成式 AI 加速落地的今天,越来越多企业尝试将大语言模型(LLM)集成到客服、内容创作、数据分析等核心业务流程中。然而,一个常被忽视的问题是:我们如何确保这些“…

作者头像 李华
网站建设 2026/4/2 22:40:56

35、表单验证全解析:从基础到高级应用

表单验证全解析:从基础到高级应用 1. 验证的必要性 在处理用户输入时,验证起着至关重要的作用。由于用户可能会犯错,错误的输入可能会导致订单错误、记录不准确,甚至破坏数据库。验证的目的是在错误数据接近数据库之前,让用户修正这些错误。 2. 常见问题解答 以下是一…

作者头像 李华