import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "\\{\\s*\"timestamp\"\\s*:\\s*(\\d+),\\s*\"value\"\\s*:\\s*\"[\\d\\.,]+,88\\/TCP\"\\s*\\}";
final String string = "{\"host\":{\"ip\":\"192.168.82.100\",\"mac\":\"00e04c684221\",\"fields\":{\"session\":[{\"timestamp\":1610875789,\"value\":\"192.168.82.100,192.168.81.30,44/TCP\"},{\"timestamp\":1610875775,\"value\":\"192.168.82.100,192.168.81.20,88/TCP\"}]}\n\n"
+ "{\n"
+ " \"host\": {\n"
+ " \"ip\": \"192.168.82.100\",\n"
+ " \"mac\": \"00e04c684221\",\n"
+ " \"fields\": {\n"
+ " \"session\": [\n"
+ " {\n"
+ " \"timestamp\": 1610875789,\n"
+ " \"value\": \"192.168.82.100,192.168.81.30,44/TCP\"\n"
+ " },\n"
+ " {\n"
+ " \"timestamp\": 1610875775,\n"
+ " \"value\": \"192.168.82.100,192.168.81.20,88/TCP\"\n"
+ " }\n"
+ " ]\n"
+ " }\n"
+ " }\n"
+ "}";
final String subst = "$1";
final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE);
final Matcher matcher = pattern.matcher(string);
// The substituted value will be contained in the result variable
final String result = matcher.replaceAll(subst);
System.out.println("Substitution result: " + result);
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Java, please visit: https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html