Java Scanner findWithinHorizo​​n()方法与示例

扫描仪类findWithinHorizon()方法

语法:

    public String findWithinHorizon(Pattern patt, int horiz);
    public String findWithinHorizon(String patt, int horiz);
  • findWithinHorizon()方法在java.util包中可用。

  • findWithinHorizon(Pattern patt,int horiz)方法用于搜索给定Pattern(patt)的下一次出现,并通过输入查找直至给定Horizon(horiz)。

  • findWithinHorizon(String patt,int horiz)方法用于从给定的字符串(patt)中搜索下一次出现的模式构建。

  • 这些方法在搜索模式时可能会引发异常。

    • IllegalStateException:如果未打开此扫描器,则可能引发此异常。

    • IllegalArgumentException:当给定的参数horizon(horiz)小于0时,可能引发此异常。

  • 这些是非静态方法,可通过类对象访问;如果尝试使用类名称访问这些方法,则会收到错误消息。

参数:

  • 在第一种情况下,findWithinHorizon(Pattern patt,int horiz)

    • 模式patt –表示要搜索的模式。

    • int horiz –代表地平线。

  • 在第二种情况下,findWithinHorizon(String patt,int horiz)

    • 字符串patt –表示由给定字符串定义的要搜索的模式。

    • int horiz –代表地平线。

返回值:

在这两种情况下,方法的返回类型均为String,它返回符合给定模式和范围的消息。

示例

//Java程序演示示例
//的findWithinHorizin()扫描仪的方法

import java.util.*;
import java.util.regex.*;

public class FindWithinHorizon {
 public static void main(String[] args) {
  String str = "Java Programming! 3 * 8= 24";

  //实例化扫描仪
  Scanner sc = new Scanner(str);

  //通过使用findWithinHorizo​​n(Pattern,Horizo​​n)方法
  //是从给定中找到下一个模式
  //模式为“ .ava”的地平线5-".ava" with horizon 5
  String pattern = sc.findWithinHorizon(Pattern.compile(".ava"), 5);
  System.out.println("sc.findWithinHorizon(Pattern.compile(.ava),5): " + pattern);

  //通过使用findWithinHorizo​​n(String,Horzon)方法
  //是从给定中找到下一个模式
  //带有地平线10的字符串“ Java”"Java" with horizon 10
  pattern = sc.findWithinHorizon("Java", 10);
  System.out.println("sc.findWithinHorizon(Java,10): " + pattern);

  //扫描仪关闭
  sc.close();
 }
}

输出结果

sc.findWithinHorizon(Pattern.compile(.ava),5): Java
sc.findWithinHorizon(Java,10): null