Java正则表达式字符串子模式排除

时间:2016-03-30 15:25:48

标签: java regex

我有两个类似地图的java字符串。

   String msg =  "{Name:\"Mouse\",abc:\"123\",c:0,trash:\"12345\"}"
    string msg2 ="{Name:\"Mouse\",abc:\"123\",c:0,trash:\"10005\"}"

我必须使用Java正则表达式来比较这两个字符串,如果两者都相同,则返回true,除了垃圾键的值。显然在上面的两个字符串中,比较它们会返回false,因为垃圾值不同。如何在没有类型转换的情况下完成正则表达式?

请指出正确的方向。提前致谢

1 个答案:

答案 0 :(得分:2)

您可以在比较之前删除两个字符串中的垃圾条目,例如

     String p = ",trash:\".*\"";
     boolean res = msg.replaceAll(p, "").equals(msg2.replaceAll(p, ""));