You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by Gary Gregory <gg...@seagullsw.com> on 2003/11/03 01:16:06 UTC

RE: cvs commit: jakarta-commons/lang/src/java/org/apache/commons/ lang StringUtils.java

Is there any sense in talking about keeping the source code in an easy to
deal with order, for example, in our product, when we order source, we use
Eclipse's default "Sort Members" function.

Gary

> -----Original Message-----
> From: scolebourne@apache.org [mailto:scolebourne@apache.org]
> Sent: Saturday, November 01, 2003 11:21
> To: jakarta-commons-cvs@apache.org
> Subject: cvs commit: jakarta-commons/lang/src/java/org/apache/commons/lang
> StringUtils.java
> 
> scolebourne    2003/11/01 11:20:35
> 
>   Modified:    lang/src/test/org/apache/commons/lang StringUtilsTest.java
>                lang/src/java/org/apache/commons/lang StringUtils.java
>   Log:
>   Move remove code to relevant position in source file
> 
>   Revision  Changes    Path
>   1.55      +3 -1      jakarta-
> commons/lang/src/test/org/apache/commons/lang/StringUtilsTest.java
> 
>   Index: StringUtilsTest.java
>   ===================================================================
>   RCS file: /home/cvs/jakarta-
> commons/lang/src/test/org/apache/commons/lang/StringUtilsTest.java,v
>   retrieving revision 1.54
>   retrieving revision 1.55
>   diff -u -r1.54 -r1.55
>   --- StringUtilsTest.java	29 Oct 2003 02:16:30 -0000	1.54
>   +++ StringUtilsTest.java	1 Nov 2003 19:20:35 -0000	1.55
>   @@ -1000,6 +1000,7 @@
>            assertEquals(StringUtils.removeStart("www.domain.com", "www."),
> "domain.com");
>            assertEquals(StringUtils.removeStart("domain.com", "www."),
> "domain.com");
>            assertEquals(StringUtils.removeStart("domain.com", ""),
> "domain.com");
>   +        assertEquals(StringUtils.removeStart("domain.com", null),
> "domain.com");
>        }
> 
>        public void testRemoveEnd() {
>   @@ -1017,6 +1018,7 @@
>            assertEquals(StringUtils.removeEnd("www.domain.com", ".com"),
> "www.domain");
>            assertEquals(StringUtils.removeEnd("www.domain", ".com"),
> "www.domain");
>            assertEquals(StringUtils.removeEnd("domain.com", ""),
> "domain.com");
>   +        assertEquals(StringUtils.removeEnd("domain.com", null),
> "domain.com");
>        }
>    }
> 
> 
> 
> 
>   1.115     +74 -70    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.114
>   retrieving revision 1.115
>   diff -u -r1.114 -r1.115
>   --- StringUtils.java	29 Oct 2003 02:16:15 -0000	1.114
>   +++ StringUtils.java	1 Nov 2003 19:20:35 -0000	1.115
>   @@ -80,7 +80,9 @@
>     *      - substring extraction relative to other strings</li>
>     *  <li><b>Split/Join</b>
>     *      - splits a String into an array of substrings and vice
> versa</li>
>   - *  <li><b>Replace/Delete/Overlay</b>
>   + *  <li><b>Remove/Delete</b>
>   + *      - removes part of a String</li>
>   + *  <li><b>Replace/Overlay</b>
>     *      - Searches a String and replaces one String with another</li>
>     *  <li><b>Chomp/Chop</b>
>     *      - removes the last part of a String</li>
>   @@ -2457,6 +2459,76 @@
>            return new String(chs, 0, count);
>        }
> 
>   +    // Remove
>   +    //-----------------------------------------------------------------
> ------
>   +    /**
>   +     * <p>Removes a substring only if it is at the begining of a source
> string,
>   +     * otherwise returns the source string.</p>
>   +     *
>   +     * <p>A <code>null</code> source string will return
> <code>null</code>.
>   +     * An empty ("") source string will return the empty string.
>   +     * A <code>null</code> search string will return the source
> string.</p>
>   +     *
>   +     * <pre>
>   +     * StringUtils.removeStart(null, *)      = null
>   +     * StringUtils.removeStart("", *)        = ""
>   +     * StringUtils.removeStart(*, null)      = *
>   +     * StringUtils.removeStart("www.domain.com", "www.")   =
> "domain.com"
>   +     * StringUtils.removeStart("domain.com", "www.")       =
> "domain.com"
>   +     * StringUtils.removeStart("www.domain.com", "domain") =
> "www.domain.com"
>   +     * StringUtils.removeStart("abc", "")    = "abc"
>   +     * </pre>
>   +     *
>   +     * @param str  the source String to search, may be null
>   +     * @param remove  the String to search for and remove, may be null
>   +     * @return the substring with the string removed if found,
>   +     *  <code>null</code> if null String input
>   +     * @since 2.1
>   +     */
>   +    public static String removeStart(String str, String remove) {
>   +        if (str == null || str.length() == 0 || remove == null ||
> remove.length() == 0) {
>   +            return str;
>   +        }
>   +        if (str.startsWith(remove)){
>   +            return str.substring(remove.length());
>   +        }
>   +        return str;
>   +    }
>   +
>   +    /**
>   +     * <p>Removes a substring only if it is at the end of a source
> string,
>   +     * otherwise returns the source string.</p>
>   +     *
>   +     * <p>A <code>null</code> source string will return
> <code>null</code>.
>   +     * An empty ("") source string will return the empty string.
>   +     * A <code>null</code> search string will return the source
> string.</p>
>   +     *
>   +     * <pre>
>   +     * StringUtils.removeEnd(null, *)      = null
>   +     * StringUtils.removeEnd("", *)        = ""
>   +     * StringUtils.removeEnd(*, null)      = *
>   +     * StringUtils.removeEnd("www.domain.com", ".com.")  = "www,domain"
>   +     * StringUtils.removeEnd("www.domain.com", ".com")   = "www.domain"
>   +     * StringUtils.removeEnd("www.domain.com", "domain") =
> "www.domain.com"
>   +     * StringUtils.removeEnd("abc", "")    = "abc"
>   +     * </pre>
>   +     *
>   +     * @param str  the source String to search, may be null
>   +     * @param remove  the String to search for and remove, may be null
>   +     * @return the substring with the string removed if found,
>   +     *  <code>null</code> if null String input
>   +     * @since 2.1
>   +     */
>   +    public static String removeEnd(String str, String remove) {
>   +        if (str == null || str.length() == 0 || remove == null ||
> remove.length() == 0) {
>   +            return str;
>   +        }
>   +        if (str.endsWith(remove)) {
>   +            return str.substring(0, str.length() - remove.length());
>   +        }
>   +        return str;
>   +    }
>   +
>        // Replacing
>        //-----------------------------------------------------------------
> ------
>        /**
>   @@ -4353,74 +4425,6 @@
>                a = c;
>            }
>            return a;
>   -    }
>   -
>   -    /**
>   -     * <p>Removes a substring only if it is at the begining of a source
> string, otherwise returns the source string.
>   -     *
>   -     * <p>A <code>null</code> source string will return
> <code>null</code>.
>   -     * An empty ("") source string will return the empty string.
>   -     * A <code>null</code> search string will return the source
> string.</p>
>   -     *
>   -     * <pre>
>   -     * StringUtils.removeStart(null, *)      = null
>   -     * StringUtils.removeStart("", *)        = ""
>   -     * StringUtils.removeStart(*, null)      = *
>   -     * StringUtils.removeStart("www.domain.com", "www.")   =
> "domain.com"
>   -     * StringUtils.removeStart("domain.com", "www.")   = "domain.com"
>   -     * StringUtils.removeStart("abc", "")    = "abc"
>   -     * </pre>
>   -     *
>   -     * @param string  the source String to search, may be null
>   -     * @param remove  the String to search for, may be null
>   -     * @return the substring after the optional occurrence of the
> separator,
>   -     *  <code>null</code> if null String input
>   -     */
>   -    public static String removeStart(String str, String remove) {
>   -        if (str == null || str.length() == 0) {
>   -            return str;
>   -        }
>   -        if (remove == null || remove.length() == 0) {
>   -            return str;
>   -        }
>   -        if (str.startsWith(remove)){
>   -            return str.substring(remove.length());
>   -        }
>   -        return str;
>   -    }
>   -
>   -    /**
>   -     * <p>Removes a substring only if it is at the end of a source
> string, otherwise returns the source string.
>   -     *
>   -     * <p>A <code>null</code> source string will return
> <code>null</code>.
>   -     * An empty ("") source string will return the empty string.
>   -     * A <code>null</code> search string will return the source
> string.</p>
>   -     *
>   -     * <pre>
>   -     * StringUtils.removeEnd(null, *)      = null
>   -     * StringUtils.removeEnd("", *)        = ""
>   -     * StringUtils.removeEnd(*, null)      = *
>   -     * StringUtils.removeEnd("www.domain.com", ".com.")   =
> "www,domain"
>   -     * StringUtils.removeEnd("www.domain.com", ".com")   = "www.domain"
>   -     * StringUtils.removeEnd("abc", "")    = "abc"
>   -     * </pre>
>   -     *
>   -     * @param string  the source String to search, may be null
>   -     * @param remove  the String to search for, may be null
>   -     * @return the substring after the optional occurrence of the
> separator,
>   -     *  <code>null</code> if null String input
>   -     */
>   -    public static String removeEnd(String str, String remove) {
>   -        if (str == null || str.length() == 0) {
>   -            return str;
>   -        }
>   -        if (remove == null || remove.length() == 0) {
>   -            return str;
>   -        }
>   -        if (str.endsWith(remove)) {
>   -            return str.substring(0, str.length() - remove.length());
>   -        }
>   -        return str;
>        }
> 
>    }
> 
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: commons-dev-help@jakarta.apache.org