【发布时间】:2025-12-23 09:20:21
【问题描述】:
lineIdentifier:dasda creationDate:[08/06/2018 00:00:00 TO *] text: [dasda, lll]
对于regex,我只想取回creationDate 中的数据
08/06/2018 00:00:00 和 *
这是我的模式,但不起作用
Pattern r = Pattern.compile("\\[(\\w*)\\]");
Matcher m = r.matcher(result);
if (m.find( )) {
System.out.println("Found value: " + m.group(0) );
}else {
System.out.println("NO MATCH");
}
知道我在做什么吗?
【问题讨论】:
-
m.group(0)是整个匹配项。你想要m.group(1) -
我总是不匹配
-
你的字符串总是这样格式化吗?然后你可以得到 [ 和 ] 的索引并与 substring() 一起使用
-
\w代表什么字符?[....]中您要查找的所有字符是否都与之匹配(记住空格也是一个字符)?