java中的正则匹配

1、通过java.util.regex包下的Pattern和Matcher类实现;

2、Pattern类创建一个匹配模式;

Pattern pattern = Pattern.compile("Java");

Pattern pattern = Pattern.compile("Java",Pattern.CASE_INSENSITIVE);//忽略大小写模式

3、split(CharSequence input) 方法

170041_3Tyf_3847203.png

4、split(CharSequence input, int limit)方法,limit代表能返回字符串个数;

5、静态匹配方法matches(String regex, CharSequence input),全字符串匹配,返回true、false

6、Pattern类中的matcher(CharSequence input)会返回一个Matcher对象;

7、Matcher类

(1)Matcher类提供了对正则表达式的分组支持;

(2)对正则表达式的多次匹配支持;

8、Pattern与Matcher联合使用

170718_0RVt_3847203.png

9、三个返回boolean值得匹配方法:

  • matches()用于全字符串匹配
  • lookingAt()从字符串最开头开始匹配满足的子串
  • find(start)可以对任意位置字符串匹配,start为起始查找索引值

10、Matcher类提供了start(),end(),group()

  • start()用于返回字符串的起始索引
  • end()结束索引
  • group()匹配到到的字符串

11、Matcher类提供了start(int gropu),end(int group),group(int i),groupCount()用于分组操作

  • matcher.start(1):返回第一组起始索引
  • matcher.end(2):返回第二组结束索引
  • matcher.group(2):返回第二组匹配到的字符串
  • matcher.groupCount():返回匹配上几次 

12、Matcher类还提供   region(int start, int end)(不包括end)方法用于设定查找范围;

13、Matcher类还提供  reset()和reset(CharSequence input)

172006_qB7p_3847203.png

14、Matcher类的匹配方法:replaceAll(String replacement) 和 replaceFirst(String replacement)

172130_W1Xf_3847203.png

15、Matcher类的匹配方法 : 

  • appendReplacement  匹配到的替换后存入sb
  • appendTail匹配不到的接在后面

172406_yIVu_3847203.png

转载于:https://my.oschina.net/u/3847203/blog/1814341

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值