贪婪的量词Java Java中的正则表达式。
贪婪的量词是默认的量词。贪婪的量词从输入字符串中尽可能匹配(可能的最长匹配),如果未发生匹配,则它离开最后一个字符并再次匹配。以下是贪婪量词的列表-
re*
re?
re+
re{n}
re{n,}
re{n,m}
示例
在下面的Java示例中,我们尝试匹配1个或多个数字,尽管值4、45、455等符合条件,但我们的输入字符串为45545,因为我们使用的是贪婪量词,它匹配的字符串可能最长。
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); System.out.println(“”Matched text: ); while (matcher.find()) { System.out.println(matcher.group()); } } }
输出结果
Enter input text: Matched text: 45545