scolebourne 2003/03/23 16:47:03
Modified: lang/src/test/org/apache/commons/lang
StringUtilsTrimEmptyTest.java
lang/src/java/org/apache/commons/lang StringUtils.java
Log:
Add trimToNull
Add trimToEmpty
Revision Changes Path
1.7 +25 -1
jakarta-commons/lang/src/test/org/apache/commons/lang/StringUtilsTrimEmptyTest.java
Index: StringUtilsTrimEmptyTest.java
===================================================================
RCS file:
/home/cvs/jakarta-commons/lang/src/test/org/apache/commons/lang/StringUtilsTrimEmptyTest.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- StringUtilsTrimEmptyTest.java 23 Mar 2003 21:51:19 -0000 1.6
+++ StringUtilsTrimEmptyTest.java 24 Mar 2003 00:47:02 -0000 1.7
@@ -97,6 +97,8 @@
assertEquals(FOO, StringUtils.clean(" " + FOO + " "));
assertEquals(FOO, StringUtils.clean(" " + FOO));
assertEquals(FOO, StringUtils.clean(FOO + ""));
+ assertEquals("", StringUtils.clean(" \t\r\n\b "));
+ assertEquals("", StringUtils.clean(""));
assertEquals("", StringUtils.clean(null));
}
@@ -105,7 +107,29 @@
assertEquals(FOO, StringUtils.trim(" " + FOO + " "));
assertEquals(FOO, StringUtils.trim(" " + FOO));
assertEquals(FOO, StringUtils.trim(FOO + ""));
+ assertEquals("", StringUtils.trim(" \t\r\n\b "));
+ assertEquals("", StringUtils.trim(""));
assertEquals(null, StringUtils.trim(null));
+ }
+
+ public void testTrimToNull() {
+ assertEquals(FOO, StringUtils.trimToNull(FOO + " "));
+ assertEquals(FOO, StringUtils.trimToNull(" " + FOO + " "));
+ assertEquals(FOO, StringUtils.trimToNull(" " + FOO));
+ assertEquals(FOO, StringUtils.trimToNull(FOO + ""));
+ assertEquals(null, StringUtils.trimToNull(" \t\r\n\b "));
+ assertEquals(null, StringUtils.trimToNull(""));
+ assertEquals(null, StringUtils.trimToNull(null));
+ }
+
+ public void testTrimToEmpty() {
+ assertEquals(FOO, StringUtils.trimToEmpty(FOO + " "));
+ assertEquals(FOO, StringUtils.trimToEmpty(" " + FOO + " "));
+ assertEquals(FOO, StringUtils.trimToEmpty(" " + FOO));
+ assertEquals(FOO, StringUtils.trimToEmpty(FOO + ""));
+ assertEquals("", StringUtils.trimToEmpty(" \t\r\n\b "));
+ assertEquals("", StringUtils.trimToEmpty(""));
+ assertEquals("", StringUtils.trimToEmpty(null));
}
public void testIsNotEmpty() {
1.38 +76 -10
jakarta-commons/lang/src/java/org/apache/commons/lang/StringUtils.java
Index: StringUtils.java
===================================================================
RCS file:
/home/cvs/jakarta-commons/lang/src/java/org/apache/commons/lang/StringUtils.java,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -r1.37 -r1.38
--- StringUtils.java 23 Mar 2003 21:52:31 -0000 1.37
+++ StringUtils.java 24 Mar 2003 00:47:02 -0000 1.38
@@ -76,6 +76,7 @@
* @author Holger Krauth
* @author <a href="mailto:[EMAIL PROTECTED]">Alexander Day Chaffee</a>
* @author <a href="mailto:[EMAIL PROTECTED]">Henning P. Schmiedehausen</a>
+ * @author Arun Mammen Thomas
* @since 1.0
* @version $Id$
*/
@@ -99,6 +100,14 @@
* <p>Removes control characters, including whitespace, from both
* ends of this String, handling <code>null</code> by returning
* an empty String.</p>
+ *
+ * <pre>
+ * StringUtils.clean("abc") = "abc"
+ * StringUtils.clean(" abc ") = "abc"
+ * StringUtils.clean(" ") = ""
+ * StringUtils.clean("") = ""
+ * StringUtils.clean(null) = ""
+ * </pre>
*
* @see java.lang.String#trim()
* @param str the String to check
@@ -112,15 +121,72 @@
* <p>Removes control characters, including whitespace, from both
* ends of this String, handling <code>null</code> by returning
* <code>null</code>.</p>
+ *
+ * <p>The string is trimmed using [EMAIL PROTECTED] String#trim()}.</p>
+ *
+ * <pre>
+ * StringUtils.trim("abc") = "abc"
+ * StringUtils.trim(" abc ") = "abc"
+ * StringUtils.trim(" ") = ""
+ * StringUtils.trim("") = ""
+ * StringUtils.trim(null) = null
+ * </pre>
*
* @see java.lang.String#trim()
- * @param str the String to check
+ * @param str the String to be trimmed
* @return the trimmed text (or <code>null</code>)
*/
public static String trim(String str) {
return (str == null ? null : str.trim());
}
+ /**
+ * <p>Removes control characters, including whitespace, from both
+ * ends of this string returning <code>null</code> if the string is
+ * empty after the trim or if it is <code>null</code>.
+ *
+ * <p>The string is trimmed using [EMAIL PROTECTED] String#trim()}.</p>
+ *
+ * <pre>
+ * StringUtils.trimToNull("abc") = "abc"
+ * StringUtils.trimToNull(" abc ") = "abc"
+ * StringUtils.trimToNull(" ") = null
+ * StringUtils.trimToNull("") = null
+ * StringUtils.trimToNull(null) = null
+ * </pre>
+ *
+ * @see java.lang.String#trim()
+ * @param str the String to be trimmed.
+ * @return the trimmed string, or null if it's empty or null
+ */
+ public static String trimToNull(String str) {
+ String ts = trim(str);
+ return (ts == null || ts.length() == 0 ? null : ts);
+ }
+
+ /**
+ * <p>Removes control characters, including whitespace, from both
+ * ends of this string returning an empty string if the string is
+ * empty after the trim or if it is <code>null</code>.
+ *
+ * <p>The string is trimmed using [EMAIL PROTECTED] String#trim()}.</p>
+ *
+ * <pre>
+ * StringUtils.trimToEmpty("abc") = "abc"
+ * StringUtils.trimToEmpty(" abc ") = "abc"
+ * StringUtils.trimToEmpty(" ") = ""
+ * StringUtils.trimToEmpty("") = ""
+ * StringUtils.trimToEmpty(null) = ""
+ * </pre>
+ *
+ * @see java.lang.String#trim()
+ * @param str the String to be trimmed
+ * @return the trimmed string, or an empty string if it's empty or null
+ */
+ public static String trimToEmpty(String str) {
+ return (str == null ? "" : str.trim());
+ }
+
/**
* <p>Deletes all 'space' characters from a String.</p>
*
@@ -1708,8 +1774,8 @@
/**
* <p>Checks if the String contains only certain chars.</p>
*
- * @param str the string to check
- * @param validChars a string of valid chars
+ * @param str the String to check
+ * @param validChars a string of valid chars
* @return true if it only contains valid chars and is non-null
*/
public static boolean containsOnly(String str, String validChars) {
@@ -1722,8 +1788,8 @@
/**
* <p>Checks if the String contains only certain chars.</p>
*
- * @param str the string to check
- * @param validChars an array of valid chars
+ * @param str the String to check
+ * @param validChars an array of valid chars
* @return true if it only contains valid chars and is non-null
*/
public static boolean containsOnly(String str, char[] validChars) {
@@ -1751,8 +1817,8 @@
/**
* <p>Checks that the String does not contain certain chars.</p>
*
- * @param str the string to check
- * @param invalidChars a string of invalid chars
+ * @param str the String to check
+ * @param invalidChars a string of invalid chars
* @return true if it contains none of the invalid chars, or is null
*/
public static boolean containsNone(String str, String invalidChars) {
@@ -1765,8 +1831,8 @@
/**
* <p>Checks that the String does not contain certain chars.</p>
*
- * @param str the string to check
- * @param invalidChars an array of invalid chars
+ * @param str the String to check
+ * @param invalidChars an array of invalid chars
* @return true if it contains none of the invalid chars, or is null
*/
public static boolean containsNone(String str, char[] invalidChars) {
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]