WordUtils.java 7.83 KB
package org.apache.commons.lang3.text;

import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.apache.commons.lang3.ArrayUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.SystemUtils;

public class WordUtils
{
  private static boolean a(char paramChar, char[] paramArrayOfChar)
  {
    boolean bool2 = false;
    boolean bool1;
    if (paramArrayOfChar == null)
    {
      bool1 = Character.isWhitespace(paramChar);
      return bool1;
    }
    int j = paramArrayOfChar.length;
    int i = 0;
    for (;;)
    {
      bool1 = bool2;
      if (i >= j) {
        break;
      }
      if (paramChar == paramArrayOfChar[i]) {
        return true;
      }
      i += 1;
    }
  }
  
  public static String capitalize(String paramString)
  {
    return capitalize(paramString, null);
  }
  
  public static String capitalize(String paramString, char... paramVarArgs)
  {
    if (paramVarArgs == null) {}
    for (int i = -1; (StringUtils.isEmpty(paramString)) || (i == 0); i = paramVarArgs.length) {
      return paramString;
    }
    paramString = paramString.toCharArray();
    int j = 0;
    int k = 1;
    if (j < paramString.length)
    {
      char c = paramString[j];
      if (a(c, paramVarArgs)) {
        i = 1;
      }
      for (;;)
      {
        j += 1;
        k = i;
        break;
        i = k;
        if (k != 0)
        {
          paramString[j] = Character.toTitleCase(c);
          i = 0;
        }
      }
    }
    return new String(paramString);
  }
  
  public static String capitalizeFully(String paramString)
  {
    return capitalizeFully(paramString, null);
  }
  
  public static String capitalizeFully(String paramString, char... paramVarArgs)
  {
    if (paramVarArgs == null) {}
    for (int i = -1; (StringUtils.isEmpty(paramString)) || (i == 0); i = paramVarArgs.length) {
      return paramString;
    }
    return capitalize(paramString.toLowerCase(), paramVarArgs);
  }
  
  public static boolean containsAllWords(CharSequence paramCharSequence, CharSequence... paramVarArgs)
  {
    if ((StringUtils.isEmpty(paramCharSequence)) || (ArrayUtils.isEmpty(paramVarArgs))) {
      return false;
    }
    int j = paramVarArgs.length;
    int i = 0;
    for (;;)
    {
      if (i >= j) {
        break label81;
      }
      CharSequence localCharSequence = paramVarArgs[i];
      if ((StringUtils.isBlank(localCharSequence)) || (!Pattern.compile(".*\\b" + localCharSequence + "\\b.*").matcher(paramCharSequence).matches())) {
        break;
      }
      i += 1;
    }
    label81:
    return true;
  }
  
  public static String initials(String paramString)
  {
    return initials(paramString, null);
  }
  
  public static String initials(String paramString, char... paramVarArgs)
  {
    if (StringUtils.isEmpty(paramString)) {
      return paramString;
    }
    if ((paramVarArgs != null) && (paramVarArgs.length == 0)) {
      return "";
    }
    int i1 = paramString.length();
    char[] arrayOfChar = new char[i1 / 2 + 1];
    int j = 0;
    int n = 1;
    int k = 0;
    if (j < i1)
    {
      char c = paramString.charAt(j);
      int i;
      int m;
      if (a(c, paramVarArgs))
      {
        i = 1;
        m = k;
      }
      for (;;)
      {
        j += 1;
        n = i;
        k = m;
        break;
        i = n;
        m = k;
        if (n != 0)
        {
          arrayOfChar[k] = c;
          m = k + 1;
          i = 0;
        }
      }
    }
    return new String(arrayOfChar, 0, k);
  }
  
  public static String swapCase(String paramString)
  {
    if (StringUtils.isEmpty(paramString)) {
      return paramString;
    }
    paramString = paramString.toCharArray();
    boolean bool = true;
    int i = 0;
    if (i < paramString.length)
    {
      char c = paramString[i];
      if (Character.isUpperCase(c))
      {
        paramString[i] = Character.toLowerCase(c);
        bool = false;
      }
      for (;;)
      {
        i += 1;
        break;
        if (Character.isTitleCase(c))
        {
          paramString[i] = Character.toLowerCase(c);
          bool = false;
        }
        else if (Character.isLowerCase(c))
        {
          if (bool)
          {
            paramString[i] = Character.toTitleCase(c);
            bool = false;
          }
          else
          {
            paramString[i] = Character.toUpperCase(c);
          }
        }
        else
        {
          bool = Character.isWhitespace(c);
        }
      }
    }
    return new String(paramString);
  }
  
  public static String uncapitalize(String paramString)
  {
    return uncapitalize(paramString, null);
  }
  
  public static String uncapitalize(String paramString, char... paramVarArgs)
  {
    if (paramVarArgs == null) {}
    for (int i = -1; (StringUtils.isEmpty(paramString)) || (i == 0); i = paramVarArgs.length) {
      return paramString;
    }
    paramString = paramString.toCharArray();
    int j = 0;
    int k = 1;
    if (j < paramString.length)
    {
      char c = paramString[j];
      if (a(c, paramVarArgs)) {
        i = 1;
      }
      for (;;)
      {
        j += 1;
        k = i;
        break;
        i = k;
        if (k != 0)
        {
          paramString[j] = Character.toLowerCase(c);
          i = 0;
        }
      }
    }
    return new String(paramString);
  }
  
  public static String wrap(String paramString, int paramInt)
  {
    return wrap(paramString, paramInt, null, false);
  }
  
  public static String wrap(String paramString1, int paramInt, String paramString2, boolean paramBoolean)
  {
    return wrap(paramString1, paramInt, paramString2, paramBoolean, " ");
  }
  
  public static String wrap(String paramString1, int paramInt, String paramString2, boolean paramBoolean, String paramString3)
  {
    if (paramString1 == null) {
      return null;
    }
    String str = paramString2;
    if (paramString2 == null) {
      str = SystemUtils.LINE_SEPARATOR;
    }
    int j = paramInt;
    if (paramInt <= 0) {
      j = 1;
    }
    paramString2 = paramString3;
    if (StringUtils.isBlank(paramString3)) {
      paramString2 = " ";
    }
    paramString2 = Pattern.compile(paramString2);
    int k = paramString1.length();
    paramString3 = new StringBuilder(k + 32);
    paramInt = 0;
    while (paramInt < k)
    {
      int i = -1;
      Matcher localMatcher = paramString2.matcher(paramString1.substring(paramInt, Math.min(paramInt + j + 1, k)));
      if (localMatcher.find())
      {
        if (localMatcher.start() == 0) {
          paramInt = localMatcher.end() + paramInt;
        } else {
          i = localMatcher.start();
        }
      }
      else
      {
        if (k - paramInt <= j) {
          break;
        }
        while (localMatcher.find()) {
          i = localMatcher.start() + paramInt;
        }
        if (i >= paramInt)
        {
          paramString3.append(paramString1.substring(paramInt, i));
          paramString3.append(str);
          paramInt = i + 1;
        }
        else if (paramBoolean)
        {
          paramString3.append(paramString1.substring(paramInt, j + paramInt));
          paramString3.append(str);
          paramInt += j;
        }
        else
        {
          localMatcher = paramString2.matcher(paramString1.substring(paramInt + j));
          if (localMatcher.find()) {
            i = localMatcher.start() + paramInt + j;
          }
          if (i >= 0)
          {
            paramString3.append(paramString1.substring(paramInt, i));
            paramString3.append(str);
            paramInt = i + 1;
          }
          else
          {
            paramString3.append(paramString1.substring(paramInt));
            paramInt = k;
          }
        }
      }
    }
    paramString3.append(paramString1.substring(paramInt));
    return paramString3.toString();
  }
}


/* Location:              /home/merong/decompile/hackery-dex2jar.jar!/org/apache/commons/lang3/text/WordUtils.class
 * Java compiler version: 6 (50.0)
 * JD-Core Version:       0.7.1
 */