Author: mbenson
Date: Sun Apr 3 17:19:31 2011
New Revision: 1088340
URL: http://svn.apache.org/viewvc?rev=1088340&view=rev
Log:
merge CharSetUtils String[] and String method forms to String...
Modified:
commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/CharSetUtils.java
Modified:
commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/CharSetUtils.java
URL:
http://svn.apache.org/viewvc/commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/CharSetUtils.java?rev=1088340&r1=1088339&r2=1088340&view=diff
==============================================================================
---
commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/CharSetUtils.java
(original)
+++
commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/CharSetUtils.java
Sun Apr 3 17:19:31 2011
@@ -64,31 +64,8 @@ public class CharSetUtils {
* @param set the character set to use for manipulation, may be null
* @return the modified String, {@code null} if null string input
*/
- public static String squeeze(String str, String set) {
- if (StringUtils.isEmpty(str) || StringUtils.isEmpty(set)) {
- return str;
- }
- String[] strs = new String[1];
- strs[0] = set;
- return squeeze(str, strs);
- }
-
- /**
- * <p>Squeezes any repetitions of a character that is mentioned in the
- * supplied set.</p>
- *
- * <p>An example is:</p>
- * <ul>
- * <li>squeeze("hello", {"el"}) =>
"helo"</li>
- * </ul>
- *
- * @see CharSet#getInstance(java.lang.String) for set-syntax.
- * @param str the string to squeeze, may be null
- * @param set the character set to use for manipulation, may be null
- * @return the modified String, {@code null} if null string input
- */
- public static String squeeze(String str, String[] set) {
- if (StringUtils.isEmpty(str) || ArrayUtils.isEmpty(set)) {
+ public static String squeeze(String str, String... set) {
+ if (StringUtils.isEmpty(str) || deepEmpty(set)) {
return str;
}
CharSet chars = CharSet.getInstance(set);
@@ -127,42 +104,17 @@ public class CharSetUtils {
*
* @see CharSet#getInstance(java.lang.String) for set-syntax.
* @param str String to count characters in, may be null
- * @param set String set of characters to count, may be null
- * @return the character count, zero if null string input
- */
- public static int count(String str, String set) {
- if (StringUtils.isEmpty(str) || StringUtils.isEmpty(set)) {
- return 0;
- }
- String[] strs = new String[1];
- strs[0] = set;
- return count(str, strs);
- }
-
- /**
- * <p>Takes an argument in set-syntax, see evaluateSet,
- * and returns the number of characters present in the specified
string.</p>
- *
- * <p>An example would be:</p>
- * <ul>
- * <li>count("hello", {"c-f", "o"}) returns
2.</li>
- * </ul>
- *
- * @see CharSet#getInstance(java.lang.String) for set-syntax.
- * @param str String to count characters in, may be null
* @param set String[] set of characters to count, may be null
* @return the character count, zero if null string input
*/
- public static int count(String str, String[] set) {
- if (StringUtils.isEmpty(str) || ArrayUtils.isEmpty(set)) {
+ public static int count(String str, String... set) {
+ if (StringUtils.isEmpty(str) || deepEmpty(set)) {
return 0;
}
CharSet chars = CharSet.getInstance(set);
int count = 0;
- char[] chrs = str.toCharArray();
- int sz = chrs.length;
- for(int i=0; i<sz; i++) {
- if(chars.contains(chrs[i])) {
+ for (char c : str.toCharArray()) {
+ if (chars.contains(c)) {
count++;
}
}
@@ -186,43 +138,15 @@ public class CharSetUtils {
*
* @see CharSet#getInstance(java.lang.String) for set-syntax.
* @param str String to keep characters from, may be null
- * @param set String set of characters to keep, may be null
- * @return the modified String, {@code null} if null string input
- * @since 2.0
- */
- public static String keep(String str, String set) {
- if (str == null) {
- return null;
- }
- if (str.length() == 0 || StringUtils.isEmpty(set)) {
- return "";
- }
- String[] strs = new String[1];
- strs[0] = set;
- return keep(str, strs);
- }
-
- /**
- * <p>Takes an argument in set-syntax, see evaluateSet,
- * and keeps any of characters present in the specified string.</p>
- *
- * <p>An example would be:</p>
- * <ul>
- * <li>keep("hello", {"c-f", "o"})
- * returns "eo"</li>
- * </ul>
- *
- * @see CharSet#getInstance(java.lang.String) for set-syntax.
- * @param str String to keep characters from, may be null
* @param set String[] set of characters to keep, may be null
* @return the modified String, {@code null} if null string input
* @since 2.0
*/
- public static String keep(String str, String[] set) {
+ public static String keep(String str, String... set) {
if (str == null) {
return null;
}
- if (str.length() == 0 || ArrayUtils.isEmpty(set)) {
+ if (str.length() == 0 || deepEmpty(set)) {
return "";
}
return modify(str, set, true);
@@ -245,35 +169,11 @@ public class CharSetUtils {
*
* @see CharSet#getInstance(java.lang.String) for set-syntax.
* @param str String to delete characters from, may be null
- * @param set String set of characters to delete, may be null
- * @return the modified String, {@code null} if null string input
- */
- public static String delete(String str, String set) {
- if (StringUtils.isEmpty(str) || StringUtils.isEmpty(set)) {
- return str;
- }
- String[] strs = new String[1];
- strs[0] = set;
- return delete(str, strs);
- }
-
- /**
- * <p>Takes an argument in set-syntax, see evaluateSet,
- * and deletes any of characters present in the specified string.</p>
- *
- * <p>An example would be:</p>
- * <ul>
- * <li>delete("hello", {"c-f", "o"}) returns
- * "hll"</li>
- * </ul>
- *
- * @see CharSet#getInstance(java.lang.String) for set-syntax.
- * @param str String to delete characters from, may be null
* @param set String[] set of characters to delete, may be null
* @return the modified String, {@code null} if null string input
*/
- public static String delete(String str, String[] set) {
- if (StringUtils.isEmpty(str) || ArrayUtils.isEmpty(set)) {
+ public static String delete(String str, String... set) {
+ if (StringUtils.isEmpty(str) || deepEmpty(set)) {
return str;
}
return modify(str, set, false);
@@ -301,4 +201,14 @@ public class CharSetUtils {
return buffer.toString();
}
+ private static boolean deepEmpty(String[] strings) {
+ if (strings != null) {
+ for (String s : strings) {
+ if (StringUtils.isNotEmpty(s)) {
+ return false;
+ }
+ }
+ }
+ return true;
+ }
}