所有格量词 Java 正则表达式


贪婪量词是默认量词。如果匹配没有发生,贪婪量词会尽可能多地匹配输入字符串(可能的最长匹配),然后它会离开最后一个字符并再次匹配。

所有格量词与贪婪量词类似,唯一不同的是它最初尝试尽可能多地匹配字符,如果匹配没有发生,与贪婪量词不同的是,它不会回溯。

如果你在贪婪量词后放置一个“+”,它就变成了所有格量词。以下是有所格量词的列表

量词说明
re*+匹配零个或多个出现的次数。
re?+匹配零个或 1 个出现的次数。
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

更新于:10-Jan-2020

340 次浏览

开启您的 事业

完成课程并取得认证

开始
广告
© . All rights reserved.