下面是一段Java代码,可以对包含多处IP地址的字符串进行脱敏,将IP地址的前三部分用星号代替:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class IPObfuscator {
public static void main(String[] args) {
String input = "This is a string with IP addresses: 192.168.0.1, 192.168.1.1, 10.0.0.1";
String output = obfuscateIPs(input);
System.out.println(output);
}
public static String obfuscateIPs(String input) {
// Define the regular expression for matching IP addresses
String ipRegex = "\\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}\\b";
// Compile the regular expression
Pattern pattern = Pattern.compile(ipRegex);
// Match the regular expression against the input string
Matcher matcher = pattern.matcher(input);
// Replace all matches with the obfuscated version
String output = matcher.replaceAll("***.");
return output;
}
}