贪婪量词是默认的量词。贪婪量词在输入字符串中尽可能匹配更多内容(最长匹配),如果没有匹配,则保留最后一个字符并再次进行匹配。
占有量词与贪婪量词类似,唯一的区别是它在最初尝试匹配尽可能多的字符,并且如果没有匹配,不像贪婪量词那样回溯。
如果在贪婪量词后面加上“+”,它就变成了占有量词。以下是占有量词的列表:
量词 | 描述 |
---|---|
re*+ | 匹配零个或多个出现。 |
re?+ | 匹配零个或一个出现。 |
re++ | 匹配一个或多个出现。 |
re{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]++"; //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
以上是拥有量词 Java 正则表达式的详细内容。更多信息请关注PHP中文网其他相关文章!