我正在尝试创建一个 java.util.regex.Pattern
来匹配类似于以下内容的字符串:
Unexpected ID 'foo_<some_number>': ERR-125:"IDs": invalid id
所以我认为模式应该是这样的:
Pattern.compile("Unexpected ID 'foo_*': ERR-125:\"IDs\": invalid id");
但这没有用。 谁能告诉我为什么它不起作用?我应该做什么?
谢谢
最佳答案
您的模式
中的问题是您在下划线上使用了0个或更多(贪婪)量词。
试试这个:
String input = "Unexpected ID 'foo_1': ERR-125:\"IDs\": invalid id";
// | any digit
// | | once or more (greedy)
System.out.println(input.matches("Unexpected ID 'foo_\\d+': ERR-125:\"IDs\": invalid id"));
输出
true
关于java - 匹配字符串的模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22381839/