正则表达式,扣取字符串

扣取{}里面的字符串。
形如:我是{姓名},{学校}毕业,出身与{生日}
得到姓名,毕业,生日等字符

函数为:


String regex="\\{([^\\}]+)\\}";
Matcher matcher = pattern.matcher(staticTmsContent);
Map<String,String> map = new HashMap<String,String>();
List<String> list = new ArrayList<String>();
while (matcher.find()) {
String sign=matcher.group(1);
list.add(matcher.group(1));
}
return list;

regex分析

[]:里面表示字符只能在括号要里取值,如果[abc] 则表示字母只能是
^:如果不在开头,则表示取相反的值
\\:转义需要\,所以java里面“\”需要“\\”表示
\\?:表示转义字符"?"
[^\\}]:字符范围除"?"所有的字符
matcher.group(1):注意matcher.group(0)表示匹配的这个字符,matcher.group(1)表示第一个()里面匹配的字符。如果group(0)则上面返回的是{姓名},{毕业},{生日}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值