正则表达式删除特定模式

时间:2013-07-08 15:40:46

标签: java regex

String str=",Name=Tom,Age=23,something=something,roll=1,somethng=55,"

我想从值为数字的字符串中删除所有这些键值对。

现在我正在做这样的事情

    Pattern p = Pattern.compile(",[^=]*?=([^,]*),");
    Matcher m = p.matcher(str);
    String result = "";
    while (m.find()) {
        if (!isNumeric(m.group(1))) {
            result += m.group(0);
        }

    }
    System.out.println(result);

预期输出

",Name=Tom,something=something,"

但现在我正在

",Name=Tom,,something=something,"

请帮忙。

1 个答案:

答案 0 :(得分:5)

result=str.replaceAll(",[^=]*?=[0-9]+", "");
System.out.println(result);

你可以试试这个。