Java Scanner findWithinHorizon() 方法
定义和用法
findWithinHorizon()
方法在指定数量的字符范围内搜索由 Pattern
对象或字符串提供的正则表达式的第一个匹配项。如果没有找到匹配项,则返回 null
。
搜索的字符数量由 horizon 参数指定。如果 horizon 设置为零,则搜索将继续进行而不受限制。
如果找到了匹配项,扫描器会前进到匹配项之后的第一个字符。
如需了解有关正则表达式的更多信息,请参阅我们的 Java 正则表达式教程。
实例
在一行文本中查找电子邮件地址:
// 创建一个扫描器对象 Scanner myObj = new Scanner("请发送电子邮件至 info@example.com 以获取更多详情。"); // 使用模式在不受限制的范围内获取电子邮件地址 String email = myObj.findWithinHorizon("[a-zA-Z]+@[a-zA-Z]+\\.[a-zA-Z]{2,}", 0); // 如果找到电子邮件,则显示它 if (email != null) { System.out.println(email); } else { System.out.println("未找到电子邮件"); } // 注意:通常你会想要关闭扫描器,但在这个简单示例中为了简洁而省略了。 // 在实际应用中,请确保在不再需要扫描器时调用 myObj.close()。
语法
其中之一:
public String findWithinHorizon(Pattern pattern, int horizon) public String findWithinHorizon(String pattern, int horizon)
参数
参数 | 描述 |
---|---|
pattern | 必需。字符串或 Pattern 对象。指定搜索中使用的正则表达式。 |
horizon | 必需。指定搜索的前向限制。如果值为零,则没有限制。 |
技术细节
返回: | 包含匹配文本的字符串,如果没有找到匹配项,则返回 null 。 |
---|---|
抛出: |
|