import java.util.Arrays;
import java.util.regex.Pattern;
class EnvironmentSanitizer {
/**
* Sanitizes environment variable values.
*
* @param envVarValue The raw value of the environment variable.
* @return The sanitized value, or null if the input is invalid.
*/
public static String sanitize(String envVarValue) {
if (envVarValue == null || envVarValue.isEmpty()) {
return null; // Or an empty string "" if preferred
}
// Remove leading/trailing whitespace
envVarValue = envVarValue.trim();
// Sanitize: Allow only alphanumeric characters, underscores, and hyphens.
// This can be adjusted based on specific requirements.
Pattern pattern = Pattern.compile("^[a-zA-Z0-9_-]+$");
if (!pattern.matcher(envVarValue).matches()) {
return null; // Or throw an exception, log an error, etc.
}
return envVarValue;
}
public static void main(String[] args) {
//Example Usage
String rawValue1 = " my_variable-123 ";
String sanitizedValue1 = sanitize(rawValue1);
System.out.println("Raw: " + rawValue1 + ", Sanitized: " + sanitizedValue1);
String rawValue2 = "invalid_char@#$%";
String sanitizedValue2 = sanitize(rawValue2);
System.out.println("Raw: " + rawValue2 + ", Sanitized: " + sanitizedValue2);
String rawValue3 = null;
String sanitizedValue3 = sanitize(rawValue3);
System.out.println("Raw: " + rawValue3 + ", Sanitized: " + sanitizedValue3);
String rawValue4 = "";
String sanitizedValue4 = sanitize(rawValue4);
System.out.println("Raw: " + rawValue4 + ", Sanitized: " + sanitizedValue4);
}
}
Add your comment