贪婪的量词是默认的量词。贪婪的量词从输入字符串中尽可能匹配(最长匹配),如果未发生匹配,则它离开最后一个字符并再次匹配。
所有格量词与贪婪量词相似,唯一的区别是它试图匹配最初可能匹配的尽可能多的字符,并且,如果不像贪婪量词那样发生匹配,它就不会回退。
如果将“ +”放在贪婪的量词之后,它将变为所有格量词。以下是所有格限定词的列表-
量词 | 描述 |
---|---|
重新* + | 匹配零个或多个事件。 |
是吗? | 匹配零个或1匹配项。 |
重新++ | 匹配一个或多个事件。 |
重新{n} + | 精确匹配n次出现。 |
re {n,m} + | 至少匹配n个事件,最多匹配m个事件。 |
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Test { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter input text: "); String input = sc.nextLine(); String regex = "[0-9]++"; //创建一个模式对象 Pattern pattern = Pattern.compile(regex); //匹配字符串中的已编译模式 Matcher matcher = pattern.matcher(input); while (matcher.find()) { System.out.print(matcher.group()); System.out.println(); } } }
输出结果
Enter input text: 45678 45678