org.apache.myfaces.util

Class StringUtils

public class StringUtils extends Object

Implements utility functions for the String class

Emphasis on performance and reduced memory allocation/garbage collection in exchange for longer more complex code.

Version: $Revision: 169655 $ $Date: 2005-05-11 18:45:06 +0200 (Wed, 11 May 2005) $

Author: Anton Koinov (latest modification by $Author: grantsmith $)

Method Summary
static Stringdequote(String str, char quote)
Undoubles the quotes inside the string
Example:
 hello""world becomes hello"world
 
static Stringdequote(String str, int begin, int end, char quote)
Undoubles the quotes inside a substring
Example:
 hello""world becomes hello"world
 
WARNING: scan for quote may continue to the end of the string, make sure that either charAt(end + 1) == quote or end = str.lentgth().
static StringdequoteFull(String str, char quote)
Removes the surrounding quote and any double quote inside the string
Example:
 "hello""world" becomes hello"world
 
static StringdequoteFull(String str, int begin, int end, char quote)
static booleanisFloatNoExponent(String str)
Checks that the string represents a floating point number that CANNOT be in exponential notation
static booleanisFloatWithOptionalExponent(String str)
static booleanisInteger(String str)
static booleanisUnsignedInteger(String str)
static intminIndex(int a, int b)
Returns the minimum index >= 0, if any

Use to find the first of two characters in a string:
minIndex(s.indexOf('/'), indexOf('\'))

static Stringreplace(String str, String repl, String with)
static Stringreplace(String str, char repl, String with)
static StringBufferreplace(StringBuffer out, String s, String repl, String with)
static String[]splitLongString(String str, char separator)
Split a string into an array of strings arround a character separator.
static String[]splitLongString(String str, char separator, char quote)
Split a string into an array of strings arround a character separator.
static String[]splitShortString(String str, char separator)
Split a string into an array of strings arround a character separator.
static String[]splitShortString(String str, char separator, char quote)
Split a string into an array of strings arround a character separator.
static Stringsubstring(String str, int begin, int end)
static String[]trim(String[] strings)

Method Detail

dequote

public static String dequote(String str, char quote)
Undoubles the quotes inside the string
Example:
 hello""world becomes hello"world
 

Parameters: str input string to dequote quote the quoting char

Returns: dequoted string

dequote

public static String dequote(String str, int begin, int end, char quote)
Undoubles the quotes inside a substring
Example:
 hello""world becomes hello"world
 
WARNING: scan for quote may continue to the end of the string, make sure that either charAt(end + 1) == quote or end = str.lentgth(). If in doubt call dequote(str.substring(begin, end), quote)

Parameters: str input string from which to get the substring, must not be null begin begin index for substring end end index for substring quote the quoting char

Returns: dequoted string

Throws: IllegalArgumentException if string is incorrectly quoted

dequoteFull

public static String dequoteFull(String str, char quote)
Removes the surrounding quote and any double quote inside the string
Example:
 "hello""world" becomes hello"world
 

Parameters: str input string to dequote quote the quoting char

Returns: dequoted String

dequoteFull

public static String dequoteFull(String str, int begin, int end, char quote)

isFloatNoExponent

public static boolean isFloatNoExponent(String str)
Checks that the string represents a floating point number that CANNOT be in exponential notation

Parameters: str the string to check

Returns: boolean

isFloatWithOptionalExponent

public static boolean isFloatWithOptionalExponent(String str)

isInteger

public static boolean isInteger(String str)

isUnsignedInteger

public static boolean isUnsignedInteger(String str)

minIndex

public static int minIndex(int a, int b)
Returns the minimum index >= 0, if any

Use to find the first of two characters in a string:
minIndex(s.indexOf('/'), indexOf('\'))

replace

public static String replace(String str, String repl, String with)

replace

public static String replace(String str, char repl, String with)

replace

public static StringBuffer replace(StringBuffer out, String s, String repl, String with)

splitLongString

public static String[] splitLongString(String str, char separator)
Split a string into an array of strings arround a character separator. This function will be efficient for longer strings

Parameters: str the string to be split separator the separator character

Returns: array of string subparts

splitLongString

public static String[] splitLongString(String str, char separator, char quote)
Split a string into an array of strings arround a character separator. Each element can be optionally quoted by the quote character.
This function will be efficient for long strings

Parameters: str the string to be split separator the separator character quote the quote character

Returns: array of string subparts

Throws: IllegalArgumentException DOCUMENT ME!

splitShortString

public static String[] splitShortString(String str, char separator)
Split a string into an array of strings arround a character separator. This function will be efficient for short strings, for longer strings, another approach may be better

Parameters: str the string to be split separator the separator character

Returns: array of string subparts

splitShortString

public static String[] splitShortString(String str, char separator, char quote)
Split a string into an array of strings arround a character separator. Each element can be optionally quoted by the quote character.
This function will be efficient for short strings, for longer strings, another approach may be better

Parameters: str the string to be split separator the separator character quote the quote character

Returns: array of string subparts

Throws: IllegalArgumentException DOCUMENT ME!

substring

public static String substring(String str, int begin, int end)

trim

public static String[] trim(String[] strings)