Java News Tips Software
Java News Tips Software | Contact | Facebook | Twitter RSS

Java: Numbers only String by removing non numeric characters

With Java, deleting non numeric characters (letters, symbols etc) from a string to produce a numbers-only String is a common requirement in web applications, as application users are used to insert numeric values with non-numeric characters.

For example a phone number will be entered with (-) characters like;
650-212-5710.
A price value may be entered with (,) characters like;
12,500.00

In Java, java.lang.Character class has a method; isDigit() which can be used to identify whether a character is a digit or not. Following method can be used for extracting a numbers-only string.

public static String getOnlyNumerics(String str) {

if (str == null) {
return null;
}

StringBuffer strBuff = new StringBuffer();
char c;

for (int i = 0; i < str.length() ; i++) {
c = str.charAt(i);

if (Character.isDigit(c)) {
strBuff.append(c);
}
}
return strBuff.toString();
}

Calling above method with any String will return a numbers-only string.

Labels: ,


6 Comments

  1. Thanks for pointing me to the isDigit() method, I hadn't used it before.
  2. Ado marune .. wade wenawa thnx!!!
  3. Anonymous Mic Green on October 21, 2008 10:29 AM  
    Thanks for code snippet
  4. Gracias por el método!
    Pura vida!
  5. Anonymous Anonymous on January 23, 2010 12:55 AM  
    One could also use regular expressions to form...

    public static String getOnlyNumerics(String str) {
    return str.replaceAll( "\\D", "" );
    }

    /Michael H
  6. Anonymous Anonymous on December 28, 2010 9:36 PM  
    String result = yourString.replaceAll( "[^\\d]", "" );
ABOUT AUTHOR
Page Views :
Email :
PREVIOUS ARTICLES
Select Month:
TOP
Free counter and web stats