Java正则表达式用法

本文介绍了正则表达式,它用于模式匹配和替换。在Java中,String类提供了如matches、replaceAll等依赖正则表达式的方法,还有Pattern和Matcher类提供支持。同时阐述了Java中正则表达式常用语法,包括字符取值范围、简洁字符表示、数量表达式、逻辑表达式和边界匹配符等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Java正则表达式用法


正则表达式(Regular Expression),又称规则表达式,是计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个(规则)的文本。

正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符(元字符)组成的文字模式,它用以描述在查找文字主体时待匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。

String类里也提供了如下几个特殊的方法:

  • boolean matches(String regex):判断该字符串是否匹配指定的正则表达式。
  • String replaceAll(String regex,String replacement):将该字符串中所有匹配regex的子串替换成replacement。
  • String replaceFirst(String regex,String replacement):将高字符串中第一个匹配regex的子串替换成replacement。
  • String[] split(String regex):以regex作为分隔符,把该字符串分割成多个子串。

以上这些特殊方法都依赖于Java提供的正则表达式支持,除此之外,Java还提供了Pattern和Matcher两个类专门用于提供正则表达式支持。

Java中正则表达式常用的语法:
字符的取值范围
1.[abc]:标识可能是a,可能是b,也可能是c
2. [^abc]:标识不是a,b,c之后的任意一个
3.[a-zA-Z]:表示是英文字母
4.[0-9]:表示是数字

简洁的字符表示
.:匹配任意的字符
\d:表示数字
\D:表示非数字
\s:表示由空字符组成,[\t\n\r\x\f]
\S:表示由费空字符组成,[^\s]
\w:表示字母、数字、下划线,[a-zA-Z0-9_]
\W:表示不是由字母、数字、下划线组成

数量表达式
1.?:表示出现0次或1次
2.+:表示出现1次或多次
3.*:表示出现0次、1次或多次
4.{n}:表示出现n~m次
5.{n,m}:表示出现n~m次
6.{n,}:表示出现n次或n次以上

逻辑表达式
1.XY:表示X后跟着Y,这里X和Y分别是正则表达式的一部分
2.X|Y:表示X或Y,比如“food|f”匹配的是foo(d或f),而“(food|f)”匹配的是food或f
3.(X):子表达式,将X看做是一个整体

边界匹配符
1.^:一行的开始
2.$:一行的结束
3.\b:词的边界

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值