package org.teachingextensions.approvals.lite.util;
/**
* A static class of convenience functions for database access
*/
public final class StringUtils {
public static final String NEW_LINE = System.getProperty("line.separator");
private StringUtils() {
}
public static String stripNonNumeric(String number, boolean allowDecimal, boolean allowNegative) {
boolean allowExponential = allowDecimal;
boolean afterE = false;
if (number == null) {
return "";
}
StringBuilder result = new StringBuilder();
for (int i = 0; i < number.length(); i++) {
char c = number.charAt(i);
switch (c) {
case '0':
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
case '8':
case '9':
result.append(c);
afterE = false;
break;
case '-':
if (allowNegative || afterE) {
result.append(c);
allowNegative = false;
}
break;
case '.':
if (allowDecimal) {
result.append(c);
allowDecimal = false;
}
afterE = false;
break;
case 'e':
case 'E':
if (allowExponential) {
result.append(c);
allowExponential = false;
}
afterE = true;
break;
default:
break;
}
}
return result.toString();
}
/**
* A convenience function to check that a String has at least 1 character.
*
* @param string
* The string in question
* @return true if Non Zero.
*/
public static boolean isNonZero(String string) {
return string != null && 0 < string.trim().length();
}
public static boolean isEmpty(String string) {
return !isNonZero(string);
}
}