java正则表达式匹配{开头和}结尾的字符串,如 “你好{abc:234,bcd:efd}你好”要去掉前后的你好,怎么写?
我本来写了Stringpattern="\\{(.+)\\}";但是有的地方匹配后前面带汉字,有的又不带汉字,不知道是什么问题。后来又写了"^\\{(.+)\\}$";或...
我本来写了String pattern = "\\{(.+)\\}";但是有的地方匹配后前面带汉字,有的又不带汉字,不知道是什么问题。后来又写了"^\\{(.+)\\}$"; 或者 "^(\\{)(.+)(\\})$",结果都不匹配了。财富值没了,麻烦各位帮帮忙,谢啦!
展开
1个回答
展开全部
你要匹配的字符串呢?举个例子,全一点
然后再来写
追问
比如我的字符串为”你好{abc}我是{def}早上好“,我要找到里面所有大括号包含的字符串{abc}和{def},包括大括号在内,应该怎么写呢?
追答
String regex = "\\{[^\\}]*\\}";
String string = "你好{abc}我是{def}早上好";
Pattern pattern = Pattern.compile (regex);
Matcher match = pattern.matcher (string);
while (match.find ())
{
System.out.println (match.group ());
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询