4
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,"
이 도와주세요 얻고있다.
마지 못해 한정 기호가 필요하지 않습니다. –
@ Njay : 그것은 매력처럼 작동합니다. 고맙습니다. D : D –
정규 표현식' "(^ |,) [^, =] + = [0-9] + (? =, | $)"'를 사용합니다. 선행 쉼표가 없거나 뒤에 쉼표가 없거나'', name = Tom, publicKey = 24abf3ced, other = something, "', 정규 표현식이'', name = Tomabf3ced, other = something과 같은 값을 방지합니다. , " – FrankieTheKneeMan