Replace all characters not in range (Java String)

Viewed 38242

How do you replace all of the characters in a string that do not fit a criteria. I'm having trouble specifically with the NOT operator.

Specifically, I'm trying to remove all characters that are not a digit, I've tried this so far:

String number = "703-463-9281";
String number2 = number.replaceAll("[0-9]!", ""); // produces: "703-463-9281" (no change)
String number3 = number.replaceAll("[0-9]", "");  // produces: "--" 
String number4 = number.replaceAll("![0-9]", ""); // produces: "703-463-9281" (no change)
String number6 = number.replaceAll("^[0-9]", ""); // produces: "03-463-9281"
2 Answers
Related