首页 > 编程语言 >无涯教程-Java 正则 - Matcher boolean find(int start)函数

无涯教程-Java 正则 - Matcher boolean find(int start)函数

时间:2023-12-30 16:01:07浏览次数:23  
标签:Java String int Matcher start boolean matcher find

java.time.Matcher.find(int start)方法将重置匹配器,然后尝试从指定的索引开始查找与模式匹配的输入序列的下一个子序列。

boolean find(int start) - 声明

以下是 java.time.Matcher.find(int start)方法的声明。

public boolean find(int start)
  • start   -  输入字符串中的开始索引。

boolean find(int start) - 返回值

当且仅当从给定索引处开始的输入序列的子序列匹配此匹配器的模式时,才为true

boolean find(int start) - 异常

  • IndexOutOfBoundsException -如果模式中没有具有给定索引的捕获组。

boolean find(int start) - 示例

下面的示例显示java.time.Matcher.find(int start)方法的用法。

package com.learnfk;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class MatcherDemo {
   private static String REGEX = "(a*b)(foo)";
   private static String INPUT = "aabfooaabfooabfoob";
   private static String REPLACE = "-";
   
   public static void main(String[] args) {
      Pattern pattern = Pattern.compile(REGEX);
      
      //获取匹配器对象
      Matcher matcher = pattern.matcher(INPUT);
      
      if(matcher.find(6)) {
         //在匹配的最后一个字符之后打印偏移量。
         System.out.println("First Capturing Group, (a*b) Match String end(): "+matcher.end());    
         System.out.println("Second Capturing Group, (foo) Match String end(): "+matcher.end(1));  
      }
   }
}

让无涯教程编译并运行以上程序,这将产生以下输出-

First Capturing Group, (a*b) Match String end(): 12
Second Capturing Group, (foo) Match String end(): 9

参考链接

https://www.learnfk.com/javaregex/javaregex-matcher-find1.html

标签:Java,String,int,Matcher,start,boolean,matcher,find
From: https://blog.51cto.com/u_14033984/9041025

相关文章

  • CSS语法检查利器之csslint
    本文于2015年底完成,发布在个人博客网站上。考虑个人博客因某种原因无法修复,于是在博客园安家,之前发布的文章逐步搬迁过来。背景前段时间研究使用YUICompressor压缩项目里的js和css文件,研究了两天之后,终于在周三晚上把YUICompressor集成进了打包流程中;于是周四(2015-11-12)早晨......
  • 重定向sprintf和print的区别
    1/**2*函数:使用printf需要重定向的底层函数3*参数:保持原始格式即可,无需变动4*返回值:保持原始格式即可,无需变动5*/6intfputc(intch,FILE*f)7{8Serial_SendByte(ch);9returnch;10}1112/**13*函数:自己......
  • 二分查找算法---java----黑马程序员算法
    1.二分查找算法给定的条件:给定的有序数组A查找目标值为target,其中A标记为 数组序号从0开始,其下标最大为数组长度-1.举例数组:5  14  22 30 31  41 44条件:i>j  i表示左边下标   j表示右边下标   i从5开始   j 从44开始思想:每次计算其......
  • 无涯教程-Java 正则 - Matcher boolean find函数
    java.time.Matcher.find()方法尝试查找与模式匹配的输入序列的下一个子序列。booleanfind()-声明以下是java.time.Matcher.find()方法的声明。publicbooleanfind()booleanfind()-返回值当且仅当输入序列的子序列匹配此匹配器的模式时,才返回true。booleanfind()......
  • 无涯教程-Java 正则 - Matcher int end(int group)函数
    java.time.Matcher.end(intgroup)方法返回在上一次匹配操作期间给定组捕获的子序列的最后一个字符之后的偏移量。intend(intgroup)-声明以下是java.time.Matcher.end(intgroup)方法的声明。publicintend(intgroup)group  - 该匹配器模式中捕获组的索引。in......
  • Delphi 类(TObject、TPersistent、TComponent、TControl、TWinControl、TCustomControl
     TObject:    VCL中所有类的根类,即是说:VCL中所有的类/组件/控件都是从TObject中继承而来。TObject类中定义了基本的构造方法和析构方法。  TPersistent:    继承于TObject,按字典中的意思是“持久类”(姑且这样叫它吧,因为我一直就是这样叫这个类的-_-|)。该类在VCL中......
  • [转载] JAVA开发搞了一年多的大数据,究竟干了点啥
     ​       2021年7月份加入了当前项目组,以一个原汁原味的Java开发工程师的身份进来的,来了没多久,项目组唯一一名大数据开发工程师要离职了,一时间一大堆的数据需求急需人来接手,此刻又招不来新的数据开发。没辙,我和同组的另一位Java开发同事算是临危受命,接下了大数据方面......
  • python学习笔记4(print复杂语法、input、注释、代码缩进)
    上一节学习了概述、开发工具、编写方法、print简单语法本节内容:(一)print复杂语法1、多条print输出到一行显示print('北京',end='---->')print('欢迎你')2、使用连接符连接多个字符串+不能连接数据值和其他类型print(192,168,1,1,sep='.')#多个字符串通过.间隔print('北京欢迎你'+'2......
  • 无涯教程-Java 正则 - Matcher StringBuffer appendTail(StringBuffer sb)函数
    java.time.Matcher.appendTail(StringBuffersb)方法实现了附加和替换操作。StringBufferappendTail-声明以下是java.time.Matcher.appendTail(StringBuffersb)方法的声明。publicMatcherappendTail(StringBuffersb)sb -目标字符串缓冲区。StringBufferappend......
  • java-关键字与方法
    classclass是定义Java类的关键字。在Java中,所有的代码都必须包含在类中,并且一个Java程序可以包含多个类。下面是一个使用class定义的简单Java类的例子:publicclassPerson{privateStringname;privateintage;publicPerson(Stringname,intage){......