
贪婪量词是默认的量词。贪婪量词在输入字符串中尽可能匹配更多内容(最长匹配),如果没有匹配,则保留最后一个字符并再次进行匹配。
占有量词与贪婪量词类似,唯一的区别是它在最初尝试匹配尽可能多的字符,并且如果没有匹配,不像贪婪量词那样回溯。
如果在贪婪量词后面加上“+”,它就变成了占有量词。以下是占有量词的列表:
Unix in a Nutshell同时涵盖了许多重要的、业界标准的开放源码工具 本书还完整地讨论了常用的shell(bash、ksh及tcsh)和重要元素如正则表达式,乃至旧式工具如sed、awk与vi。 Unix不是一个庞大的物体:它是一个综合体,而《Unix技术手册》则是将这一切合并在一起的一本书。 到底unix是什么?原始的unix源码是由sco拥有,unix注册商标是由open group拥有,而领先的仿unix系统则是gnu/linux、mac os x及solaris。这些版本所附的命令与选
| 量词 | 描述 |
|---|---|
| re*+ | 匹配零个或多个出现。 |
| re?+ | 匹配零个或一个出现。 |
| re++ | 匹配一个或多个出现。 |
| re{n}+ | 匹配恰好n个出现。 |
| re{n, m}+ | 匹配至少n个且最多m个出现。 |
示例
演示
立即学习“Java免费学习笔记(深入)”;
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]++";
//Creating a pattern object
Pattern pattern = Pattern.compile(regex);
//Matching the compiled pattern in the String
Matcher matcher = pattern.matcher(input);
while (matcher.find()) {
System.out.print(matcher.group());
System.out.println();
}
}
}输出
Enter input text: 45678 45678










