花括号之间的Java正则表达式匹配

我需要解析一个日志文件并获取时间和相关的函数调用字符串,它以如下方式存储在日志文件中:{“ time”:“ 2012-09-24T03:08:50”,“

message”:“ Call( )开始”}

在其他字符串字符之间将有多个记录的时间函数调用,因此我希望使用正则表达式浏览文件并获取所有这些

我想获取包括大括号在内的整个记录​​的信息

我尝试了以下

Pattern logEntry = Pattern.compile("{(.*?)}");

Matcher matchPattern = logEntry.matcher(file);

Pattern.compile("{[^{}]*}");

Matcher matchPattern = logEntry.matcher(file);

我不断收到非法的重复错误,请帮忙!谢谢。

回答:

您需要使用’'转义’{‘&’}’

所以:"{(.*?)}"变成:"\\{(.*?)\\}"

您必须先用另一个’'转义’'

有关需要转义的字符的完整列表,请参见:http://www.regular-

expressions.info/reference.html …

以上是 花括号之间的Java正则表达式匹配 的全部内容, 来源链接: utcz.com/qa/412791.html

回到顶部