美文网首页
Java 使用正则表达式

Java 使用正则表达式

作者: 饱饱抓住了灵感 | 来源:发表于2023-07-12 17:37 被阅读0次

Java中使用正则表达式可以通过Pattern和Matcher对象实现。

首先,需要使用Pattern类来表示正则表达式。可以通过调用Pattern.compile()方法来创建一个Pattern对象,传入的参数是要匹配的正则表达式字符串。例如:

Pattern pattern = Pattern.compile("a*b");

然后,可以使用Matcher对象来匹配字符串。可以通过调用Pattern对象的matcher()方法来创建一个Matcher对象,然后使用Matcher对象的方法进行匹配和查找。例如:

Matcher matcher = pattern.matcher("aaaaab");

Matcher对象提供了一些常用的方法,例如:

  • matches():尝试将整个输入序列与模式进行匹配。
  • find():尝试在输入序列中查找与模式匹配的下一个子序列。
  • group():返回与上一次匹配操作对应的输入字串。
  • start():返回上一次匹配操作的起始索引。
  • end():返回上一次匹配操作的结束索引。

示例代码如下:

import java.util.regex.*;

public class Main {
    public static void main(String[] args) {
        String patternStr = "a*b";
        Pattern pattern = Pattern.compile(patternStr);
        String inputStr = "aaaaab";
        Matcher matcher = pattern.matcher(inputStr);
        
        if (matcher.matches()) {
            System.out.println("整个输入序列与模式匹配");
        } else {
            System.out.println("整个输入序列与模式不匹配");
        }
        
        if (matcher.find()) {
            System.out.println("在输入序列中找到了与模式匹配的子序列");
            System.out.println("匹配的子序列为:" + matcher.group());
            System.out.println("匹配的子序列起始索引为:" + matcher.start());
            System.out.println("匹配的子序列结束索引为:" + matcher.end());
        } else {
            System.out.println("在输入序列中没有找到与模式匹配的子序列");
        }
    }
}

输出结果:

整个输入序列与模式匹配
在输入序列中找到了与模式匹配的子序列
匹配的子序列为:aaaaab
匹配的子序列起始索引为:0
匹配的子序列结束索引为:6

相关文章

网友评论

      本文标题:Java 使用正则表达式

      本文链接:https://www.haomeiwen.com/subject/joepudtx.html