Project Wonder 5.0.0.8654

er.extensions.foundation
Class ERXStringUtilities

java.lang.Object
  extended by er.extensions.foundation.ERXStringUtilities

public class ERXStringUtilities
extends Object

Collection of String utilities. Contains the base localization support.


Field Summary
protected static double adjustement
          holds the base adjustment for fuzzy matching
static char[] HEX_CHARS
          Holds the chars for hex enconding
static NSArray SORT_ASCENDING
          Holds the ascending EOSortOrderings
static NSArray SORT_DESCENDING
          Holds the ascending EOSortOrderings
static String SpecialRegexCharacters
          Holds characters that have special meaning for regex
 
Constructor Summary
ERXStringUtilities()
           
 
Method Summary
static void appendSeparatorIfLastNot(char separator, char not, StringBuffer sb)
          Utility method to append a character to a StringBuffer if the last character is not a certain character.
static String byteArrayToHexString(byte[] block)
          Converts a byte array to hex string.
static String camelCaseToUnderscore(String camelString, boolean lowercase)
          Converts ThisIsATest to this_is_a_test
static String capitalize(String value)
          Capitalizes a given string.
static String capitalizeAllWords(String value)
          Capitalizes all the strings in a given string.
static boolean caseInsensitiveStartsWith(String stringToSearch, String prefix)
          Tests if the string starts with the specified prefix ignoring case.
static boolean caseInsensitiveStartsWith(String stringToSearch, String prefix, int toffset)
          Tests if the string starts with the specified prefix starting at the specified index ignoring case.
static boolean containsAnyCharacter(String source, String characters)
          Checks if any of the characters specified in characters is contained in the string specified by source.
static String displayNameForKey(String key)
          Calculates a default display name for a given key path.
static double distance(String a, String b)
          Java port of the distance algorithm.
static String dumpObject(Object object)
          creates a readable debug string for some data types (dicts, arrays, adaptorOperations, databaseOperations)
static String emptyStringForNull(String s)
          Simple utility method that will return the string "" if the string passed in is null otherwise it will return the passed in string.
static String escape(char[] _escapeChars, char _escapeWith, String _sourceString)
          Escapes the given characters with the given escape character in _sourceString.
static String escapeNonBasicLatinChars(char c)
           
static String escapeNonBasicLatinChars(String str)
           
static String escapeNonXMLChars(String str)
           
static String escapeSpace(String aString)
          Removes the spaces in a given String
static String excelSafeCsvString(String s)
          Removes line breaks and quotes the string if neccessary
static String firstPropertyKeyInKeyPath(String keyPath)
           
static String fromBytes(byte[] bytes, String encoding)
          Utility to convert from bytes without the try/catch.
static String fromUTF8Bytes(byte[] bytes)
          Utility to convert from UTF-8 bytes without the try/catch.
static NSArray fuzzyMatch(String name, String entityName, String propertyKey, String synonymsKey, EOEditingContext ec, ERXFuzzyMatchCleaner cleaner, NSArray sortOrderings)
          Fuzzy matching is useful for catching user entered typos.
static NSArray fuzzyMatch(String name, String entityName, String propertyKey, String synonymsKey, EOEditingContext ec, ERXFuzzyMatchCleaner cleaner, String comparisonString)
          Deprecated. use fuzzyMatch(String name, String entityName, String propertyKey, String synonymsKey, EOEditingContext ec, ERXFuzzyMatchCleaner cleaner, NSArray sortOrderings ) instead
static String getSimpleClassName(Class clazz)
          "Borrowed" from 1.5's Class.getSimpleClassName
static byte[] hexStringToByteArray(String hexString)
          Converts a even-length, hex-encoded String to a byte array.
static void indent(PrintWriter writer, int level)
           
static void indent(StringBuffer sb, int level)
           
static int indexOfNumericInString(String str)
          Locate the the first numeric character in the given string.
static int indexOfNumericInString(String str, int fromIndex)
          Locate the the first numeric character after fromIndex in the given string.
static String insertString(String destinationString, String contentToInsert, int insertOffset)
          Inserts the a string into a nother string at a particular offset.
static Integer integerWithString(String s)
          Calculates an Integer for a given string.
static boolean isDigitsOnly(String aString)
          checks if the specified String contains only digits.
static boolean isLettersOnly(String aString)
          checks if the specified String contains only Letters.
static String keyPathWithoutFirstProperty(String keyPath)
           
static String keyPathWithoutLastProperty(String keyPath)
           
static String lastPropertyKeyInKeyPath(String keyPath)
           
static String leftPad(String string, char padChar, int paddedLength)
          Pads a string to the specified number of chars by adding the the given pad char on the left side.
static String localizedStringForKey(String key)
          Gets a localized string for a given key in the application's Localizable strings file for the default language (English).
static String localizedStringForKey(String key, String framework)
          Gets a localized string for a given key in a given framework's Localizable strings file for the default language (English).
static String localizedStringForKey(String key, String framework, NSArray languages)
          Gets a localized string for a given key in a given framework's Localizable strings file using the array of languages as the search order for the key.
static String localizedTemplateStringWithObjectForKey(Object o, String key, String framework, NSArray languages)
          Uses the method localizedStringForKey to retreive a template that is then parsed using the passed in object to produce a resulting string.
static String matchCase(String originalString, String newString)
          Returns a string case-matched against the original string.
static byte[] md5(String str, String encoding)
          Generate an MD5 hash from a String.
static String md5Hex(String str, String encoding)
          Generate an MD5 hash as hex from a String.
static String nullForEmptyString(String s)
          Simple utility method that will return null if the string passed in is equal to "" otherwise it will return the passed in string.
static int numberOfOccurrencesOfCharInString(char c, String s)
          Counts the number of occurrences of a particular char in a given string.
static boolean quicksilverContains(String _str, String _searchString)
          Matches strings like Quicksilver (NullPointerException is matched by "NPE").
static String quote(String s, String quoteSymbol)
          Quote the given string with the provided quote symbols
static boolean regionMatches(StringBuffer str, int toffset, String other, int ooffset, int len)
          It's ridiculous that StringBuffer doesn't have a .regionMatches like String.
static String removeCharacters(String source, String characters)
          removes any character which is in characters from the source string
static String removeExceptCharacters(String source, String characters)
          removes any character which is not in characters from the source string
static String removeExtraDotsFromVersionString(String version)
          Cleans up the given version string by removing extra dots(.), for example, 5.1.3 becomes 5.13, so that the string can be converted to a double or BigDecimal type easily.
static String replaceStringByStringInString(String old, String newString, String buffer)
          Replaces a given string by another string in a string.
static String rightPad(String string, char padChar, int paddedLength)
          Pads a string to the specified number of chars by adding the the given pad char on the right side.
static String safeIdentifierName(String source)
          Convenience method to call safeIdentifierName(source, "_", '_')
static String safeIdentifierName(String source, String prefix)
          Convenience method to call safeIdentifierName(source, prefix, '_')
static String safeIdentifierName(String source, String prefix, char replacement)
          Converts source to be suitable for use as an identifier in JavaScript.
static void setAdjustement(double newAdjustement)
          Sets the base adjustment used for fuzzy matching
static String stringByAppendingCSSClass(String originalString, String cssClass)
          Appends a CSS class to an existing (possibly null) CSS class string.
static String stringByReplacingFirstOccurrenceOfStringWithString(String sourceString, String stringToReplace, String replacementString)
          Replaces the first occurrence of a string with another string in a string.
static String stringByTruncatingStringToByteLengthInEncoding(String inputString, int byteLength, String encoding)
          This method takes a string and returns a string which is the first string such that the result byte length in the specified encoding does not exceed the byte limit.
static boolean stringContainsSpecialRegexCharacters(String s)
          checks if the String contains a character that has a special meaning in regex.
static boolean stringEqualsString(String s1, String s2)
           
static String stringFromDictionary(NSDictionary dict)
          Same as NSPropertySerialization except it sorts on keys first.
static String stringFromInputStream(InputStream in)
          Returns a string from the input stream using the default encoding.
static String stringFromInputStream(InputStream in, String encoding)
          Returns a string from the input stream using the default encoding.
static String stringFromResource(String name, String extension, NSBundle bundle)
          Retrives a given string for a given name, extension and bundle.
static String stringFromURL(URL url)
          Returns a string from the contents of the given URL.
static String stringFromURL(URL url, String encoding)
          Returns a string from the contents of the given URL.
static boolean stringIsNullOrEmpty(String s)
          Simple test if the string is either null or equal to "".
static String stringWithContentsOfFile(File file)
          Reads the contents of a file given by a path into a string.
static String stringWithContentsOfFile(String path)
          Reads the contents of a file given by a path into a string.
static String stringWithNtimesString(int n, String s)
          String multiplication.
static String stripHtml(String str)
          Removes HTML characters from the given string.
static byte[] toBytes(String string, String encoding)
          Utility to convert to bytes without the try/catch.
static String toHexString(char c)
           
static String toHexString(String str)
           
static String toLowerCase(String str)
          This method runs about 20 times faster than java.lang.String.toLowerCase (and doesn't waste any storage when the result is equal to the input).
static String toString(Object[] array, String separator)
          Returns a String by invoking toString() on each object from the array.
static byte[] toUTF8Bytes(String string)
          Utility to convert to UTF-8 bytes without the try/catch.
static String trimString(String s)
          Null-safe wrapper for java.lang.String.trim
static String uncapitalize(String value)
          Uncapitalizes a given string.
static String underscoreToCamelCase(String underscoreString, boolean capitalize)
          Converts this_is_a_test to ThisIsATest
static String unquote(String s, String quoteSymbol)
          Remove the quote symbols from the given string
static String urlDecode(String string)
          Utility to decode an URL without the try/catch.
static String urlEncode(String string)
          Utility to encode an URL without the try/catch.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

HEX_CHARS

public static final char[] HEX_CHARS
Holds the chars for hex enconding


SORT_ASCENDING

public static final NSArray SORT_ASCENDING
Holds the ascending EOSortOrderings


SORT_DESCENDING

public static final NSArray SORT_DESCENDING
Holds the ascending EOSortOrderings


SpecialRegexCharacters

public static final String SpecialRegexCharacters
Holds characters that have special meaning for regex

See Also:
Constant Field Values

adjustement

protected static double adjustement
holds the base adjustment for fuzzy matching

Constructor Detail

ERXStringUtilities

public ERXStringUtilities()
Method Detail

distance

public static double distance(String a,
                              String b)
Java port of the distance algorithm. The code below comes from the following post on http://mail.python.org Fuzzy string matching Magnus L. Hetland mlh@idt.ntnu.no 27 Aug 1999 15:51:03 +0200 Explanation of the distance algorithm... The algorithm: def distance(a,b): c = {} n = len(a); m = len(b) for i in range(0,n+1): c[i,0] = i for j in range(0,m+1): c[0,j] = j for i in range(1,n+1): for j in range(1,m+1): x = c[i-1,j]+1 y = c[i,j-1]+1 if a[i-1] == b[j-1]: z = c[i-1,j-1] else: z = c[i-1,j-1]+1 c[i,j] = min(x,y,z) return c[n,m] It calculates the following: Given two strings, a and b, and three operations, adding, subtracting and exchanging single characters, what is the minimal number of steps needed to translate a into b? The method is based on the following idea: We want to find the distance between a[:x] and b[:y]. To do this, we first calculate 1) the distance between a[:x-1] and b[:y], adding the cost of a subtract-operation, used to get from a[:x] to a[:z-1]; 2) the distance between a[:x] and b[:y-1], adding the cost of an addition-operation, used to get from b[:y-1] to b[:y]; 3) the distance between a[:x-1] and b[:y-1], adding the cost of a *possible* exchange of the letter b[y] (with a[x]). The cost of the subtraction and addition operations are 1, while the exchange operation has a cost of 1 if a[x] and b[y] are different, and 0 otherwise. After calculating these costs, we choose the least one of them (since we want to use the best solution.) Instead of doing this recursively, i.e. calculating ourselves "back" from the final value, we build a cost-matrix c containing the optimal costs, so we can reuse them when calculating the later values. The costs c[i,0] (from string of length n to empty string) are all i, and correspondingly all c[0,j] (from empty string to string of length j) are j. Finally, the cost of translating between the full strings a and b (c[n,m]) is returned. I guess that ought to cover it... --------------------------

Parameters:
a - first string
b - second string
Returns:
the distance between the two strings

setAdjustement

public static void setAdjustement(double newAdjustement)
Sets the base adjustment used for fuzzy matching

Parameters:
newAdjustement - factor to be used.

fuzzyMatch

public static NSArray fuzzyMatch(String name,
                                 String entityName,
                                 String propertyKey,
                                 String synonymsKey,
                                 EOEditingContext ec,
                                 ERXFuzzyMatchCleaner cleaner,
                                 NSArray sortOrderings)
Fuzzy matching is useful for catching user entered typos. For example if a user is search for a company named 'Aple' within your application they aren't going to find it. Thus the idea of fuzzy matching, meaning you can define a threshold of 'how close can they be' type of thing.

Parameters:
name - to be matched against
entityName - name of the entity to perform the match against.
propertyKey - to be matched against
synonymsKey - allows objects to have additional values to be matched against in addition to just the value of the propertyKey
ec - context to fetch data in
cleaner - object used to clean a string, for example the cleaner might strip out the words 'The' and 'Inc.'
sortOrderings - can be either SORT_ASCENDING or SORT_DESCENDING to tell how the results should be sorted.
Returns:
an array of objects that match in a fuzzy manner the name passed in.

fuzzyMatch

public static NSArray fuzzyMatch(String name,
                                 String entityName,
                                 String propertyKey,
                                 String synonymsKey,
                                 EOEditingContext ec,
                                 ERXFuzzyMatchCleaner cleaner,
                                 String comparisonString)
Deprecated. use fuzzyMatch(String name, String entityName, String propertyKey, String synonymsKey, EOEditingContext ec, ERXFuzzyMatchCleaner cleaner, NSArray sortOrderings ) instead


localizedStringForKey

public static String localizedStringForKey(String key)
Gets a localized string for a given key in the application's Localizable strings file for the default language (English).

Parameters:
key - to be lookup in the strings file
Returns:
string value of the looked up key

localizedStringForKey

public static String localizedStringForKey(String key,
                                           String framework)
Gets a localized string for a given key in a given framework's Localizable strings file for the default language (English).

Parameters:
key - to be lookup in the strings file
framework - name, specify app or null to perform the lookup in the application's resources.
Returns:
string value of the looked up key

localizedStringForKey

public static String localizedStringForKey(String key,
                                           String framework,
                                           NSArray languages)
Gets a localized string for a given key in a given framework's Localizable strings file using the array of languages as the search order for the key.

Parameters:
key - to be lookup in the strings file
framework - name, specify app or null to perform the lookup in the application's resources.
languages - array to search for the key in
Returns:
string value of the looked up key

localizedTemplateStringWithObjectForKey

public static String localizedTemplateStringWithObjectForKey(Object o,
                                                             String key,
                                                             String framework,
                                                             NSArray languages)
Uses the method localizedStringForKey to retreive a template that is then parsed using the passed in object to produce a resulting string. The template parser used is ERXSimpleTemplateParser.

Parameters:
o - object used to resolve keys in the localized template
key - to be lookup in the strings file
framework - name, specify app or null to perform the lookup in the application's resources.
languages - array to search for the key in
Returns:
localized template parsed and resolved with the given object.

stringWithContentsOfFile

public static String stringWithContentsOfFile(File file)
Reads the contents of a file given by a path into a string.

Parameters:
file - path to the file in the file system
Returns:
the contents of the file in a string

stringWithContentsOfFile

public static String stringWithContentsOfFile(String path)
Reads the contents of a file given by a path into a string.

Parameters:
path - to the file in the file system
Returns:
the contents of the file in a string

integerWithString

public static Integer integerWithString(String s)
Calculates an Integer for a given string. The only advantage that this method has is to not throw a number format exception if the string is not correctly formatted. This method makes use of the ERXConstant.integerForString caching logic.

Parameters:
s - string to caclulate an Integer from
Returns:
parsed Integer from the string or null if the string is not correctly formed.
See Also:
ERXConstant#integerForString(String)

stringFromResource

public static String stringFromResource(String name,
                                        String extension,
                                        NSBundle bundle)
Retrives a given string for a given name, extension and bundle.

Parameters:
name - of the resource
extension - of the resource, example: txt or rtf
bundle - to look for the resource in
Returns:
string of the given file specified in the bundle

firstPropertyKeyInKeyPath

public static final String firstPropertyKeyInKeyPath(String keyPath)

lastPropertyKeyInKeyPath

public static final String lastPropertyKeyInKeyPath(String keyPath)

keyPathWithoutLastProperty

public static final String keyPathWithoutLastProperty(String keyPath)

keyPathWithoutFirstProperty

public static final String keyPathWithoutFirstProperty(String keyPath)

displayNameForKey

public static String displayNameForKey(String key)
Calculates a default display name for a given key path. For instance for the key path: "foo.bar" the display name would be "Bar".

Parameters:
key - to calculate the display name
Returns:
display name for the given key

indexOfNumericInString

public static int indexOfNumericInString(String str)
Locate the the first numeric character in the given string.

Parameters:
str - string to scan
Returns:
position in int. -1 for not found.

indexOfNumericInString

public static int indexOfNumericInString(String str,
                                         int fromIndex)
Locate the the first numeric character after fromIndex in the given string.

Parameters:
str - string to scan
Returns:
position in int. -1 for not found.

appendSeparatorIfLastNot

public static void appendSeparatorIfLastNot(char separator,
                                            char not,
                                            StringBuffer sb)
Utility method to append a character to a StringBuffer if the last character is not a certain character. Useful for determining if you need to add an '&' to the end of a form value string.

Parameters:
separator - character to add to potentially add to the StringBuffer.
not - character to test if the given StringBuffer ends in it.
sb - StringBuffer to test and potentially append to.

replaceStringByStringInString

public static String replaceStringByStringInString(String old,
                                                   String newString,
                                                   String buffer)
Replaces a given string by another string in a string.

Parameters:
old - string to be replaced
newString - to be inserted
buffer - string to have the replacement done on it
Returns:
string after having all of the replacement done.

stringByReplacingFirstOccurrenceOfStringWithString

public static String stringByReplacingFirstOccurrenceOfStringWithString(String sourceString,
                                                                        String stringToReplace,
                                                                        String replacementString)
Replaces the first occurrence of a string with another string in a string.

Parameters:
sourceString - string to use on which to perform the replacement
stringToReplace - string to replace in sourceString if it exists.
replacementString - the string with which to replace stringToReplace.
Returns:
sourceString with stringToReplace replaced with replacementString if it existed in sourceString. otherwise, sourceString is returned.

escapeSpace

public static String escapeSpace(String aString)
Removes the spaces in a given String

Returns:
string removing all spaces in it.

toLowerCase

public static String toLowerCase(String str)
This method runs about 20 times faster than java.lang.String.toLowerCase (and doesn't waste any storage when the result is equal to the input). Warning: Don't use this method when your default locale is Turkey. java.lang.String.toLowerCase is slow because (a) it uses a StringBuffer (which has synchronized methods), (b) it initializes the StringBuffer to the default size, and (c) it gets the default locale every time to test for name equal to "tr".

See Also:
tolower

stringWithNtimesString

public static String stringWithNtimesString(int n,
                                            String s)
String multiplication.

Parameters:
n - the number of times to concatinate a given string
s - string to be multipled
Returns:
multiplied string

numberOfOccurrencesOfCharInString

public static int numberOfOccurrencesOfCharInString(char c,
                                                    String s)
Counts the number of occurrences of a particular char in a given string.

Parameters:
c - char to count in string
s - string to look for specified char in.
Returns:
number of occurences of a char in the string

stringIsNullOrEmpty

public static boolean stringIsNullOrEmpty(String s)
Simple test if the string is either null or equal to "".

Parameters:
s - string to test
Returns:
result of the above test

nullForEmptyString

public static String nullForEmptyString(String s)
Simple utility method that will return null if the string passed in is equal to "" otherwise it will return the passed in string.

Parameters:
s - string to test
Returns:
null if the string is "" else the string.

emptyStringForNull

public static String emptyStringForNull(String s)
Simple utility method that will return the string "" if the string passed in is null otherwise it will return the passed in string.

Parameters:
s - string to test
Returns:
"" if the string is null else the string

escapeNonXMLChars

public static String escapeNonXMLChars(String str)

escapeNonBasicLatinChars

public static String escapeNonBasicLatinChars(char c)

escapeNonBasicLatinChars

public static String escapeNonBasicLatinChars(String str)

escape

public static String escape(char[] _escapeChars,
                            char _escapeWith,
                            String _sourceString)
Escapes the given characters with the given escape character in _sourceString. This implementation is specifically designed for large strings. In the event that no characters are escaped, the original string will be returned with no new object creation. A null _sourceString will return null. Example: sourceString = Mike's, escape chars = ', escape with = \, returns Mike\'s

Parameters:
_escapeChars - the list of characters to escape
_escapeWith - the escape character to use
_sourceString - the string to escape the characters in.
Returns:
the escaped string

toHexString

public static String toHexString(char c)

toHexString

public static String toHexString(String str)

byteArrayToHexString

public static String byteArrayToHexString(byte[] block)
Converts a byte array to hex string.

Parameters:
block - byte array
Returns:
hex string

hexStringToByteArray

public static byte[] hexStringToByteArray(String hexString)
Converts a even-length, hex-encoded String to a byte array.

Parameters:
hexString -

removeExtraDotsFromVersionString

public static String removeExtraDotsFromVersionString(String version)
Cleans up the given version string by removing extra dots(.), for example, 5.1.3 becomes 5.13, so that the string can be converted to a double or BigDecimal type easily.

Parameters:
version - string
Returns:
cleaned-up string that only contains the first dot(.) as the floating point indicator.

capitalize

public static String capitalize(String value)
Capitalizes a given string.

Parameters:
value - to be capitalized
Returns:
capitalized string

uncapitalize

public static String uncapitalize(String value)
Uncapitalizes a given string.

Parameters:
value - to be uncapitalized
Returns:
capitalized string

capitalizeAllWords

public static String capitalizeAllWords(String value)
Capitalizes all the strings in a given string.

Parameters:
value - to be capitalized
Returns:
capitalized string

underscoreToCamelCase

public static String underscoreToCamelCase(String underscoreString,
                                           boolean capitalize)
Converts this_is_a_test to ThisIsATest

Parameters:
underscoreString - the string_with_underscores
capitalize - if true, the first letter is capitalized
Returns:
the StringWithoutUnderscores

camelCaseToUnderscore

public static String camelCaseToUnderscore(String camelString,
                                           boolean lowercase)
Converts ThisIsATest to this_is_a_test

Parameters:
camelString - the StringWithCaps
Returns:
the string_with_underscores

stringEqualsString

public static boolean stringEqualsString(String s1,
                                         String s2)

caseInsensitiveStartsWith

public static boolean caseInsensitiveStartsWith(String stringToSearch,
                                                String prefix)
Tests if the string starts with the specified prefix ignoring case. This method is optimized so that it only converts the relevant substring of stringToSearch to lowercase before comparing it to the lowercase version of prefix.

Parameters:
stringToSearch - string to check
prefix - prefix to look for
Returns:
true if stringToSearch case-insensitively starts with prefix

caseInsensitiveStartsWith

public static boolean caseInsensitiveStartsWith(String stringToSearch,
                                                String prefix,
                                                int toffset)
Tests if the string starts with the specified prefix starting at the specified index ignoring case. This method is optimized so that it only converts the relevant substring of stringToSearch to lowercase before comparing it to the lowercase version of prefix.

Parameters:
stringToSearch - string to check
prefix - prefix to look for
toffset - starting offset to perform the search
Returns:
true if stringToSearch case-insensitively starts with prefix starting at toffset

stringByTruncatingStringToByteLengthInEncoding

public static String stringByTruncatingStringToByteLengthInEncoding(String inputString,
                                                                    int byteLength,
                                                                    String encoding)
This method takes a string and returns a string which is the first string such that the result byte length in the specified encoding does not exceed the byte limit. This tends to be an issue with UTF-8 and Japanese characters because they're double- or triple-byte in UTF-8 and you need to be careful not to split in the middle of a multi-byte sequence.

This method is optimized for the UTF-8 case. If encoding is either "UTF-8" or "UTF8", the optimized case will kick in.

Parameters:
inputString - string to truncate
byteLength - maximum byte length
encoding - encoding to use
Returns:
string truncated appropriately.

isDigitsOnly

public static boolean isDigitsOnly(String aString)
checks if the specified String contains only digits.

Parameters:
aString - the string to check
Returns:
true if the string contains only digits, false otherwise

isLettersOnly

public static boolean isLettersOnly(String aString)
checks if the specified String contains only Letters.

Parameters:
aString - the string to check
Returns:
true if the string contains only Letters, false otherwise

stringContainsSpecialRegexCharacters

public static boolean stringContainsSpecialRegexCharacters(String s)
checks if the String contains a character that has a special meaning in regex. This could used to ensure that username and passwords have no such characters.

Parameters:
s - the string to check
Returns:
true if s contains one or multiple characters that have special meanings in regex.

stringFromURL

public static String stringFromURL(URL url)
                            throws IOException
Returns a string from the contents of the given URL.

Parameters:
url - the URL to read from
Returns:
the string that was read
Throws:
IOException - if the connection fails

stringFromURL

public static String stringFromURL(URL url,
                                   String encoding)
                            throws IOException
Returns a string from the contents of the given URL.

Parameters:
url - the URL to read from
encoding - the string encoding to read with
Returns:
the string that was read
Throws:
IOException - if the connection fails

stringFromInputStream

public static String stringFromInputStream(InputStream in)
                                    throws IOException
Returns a string from the input stream using the default encoding.

Parameters:
in - stream to read
Returns:
string representation of the stream.
Throws:
IOException

stringFromInputStream

public static String stringFromInputStream(InputStream in,
                                           String encoding)
                                    throws IOException
Returns a string from the input stream using the default encoding.

Parameters:
in - stream to read
encoding - to be used, null will use the default
Returns:
string representation of the stream.
Throws:
IOException

toString

public static String toString(Object[] array,
                              String separator)
Returns a String by invoking toString() on each object from the array. After each toString() call the separator is appended to the buffer

Parameters:
array - an object array from which to get a nice String representation
separator - a separator which is displayed between the objects toString() value
Returns:
a string representation from the array

dumpObject

public static String dumpObject(Object object)
creates a readable debug string for some data types (dicts, arrays, adaptorOperations, databaseOperations)


containsAnyCharacter

public static boolean containsAnyCharacter(String source,
                                           String characters)
Checks if any of the characters specified in characters is contained in the string specified by source.

Parameters:
source - the String which might contain characters
characters - the characters to check
Returns:
true if any character from characters is in source, false otherwise

removeExceptCharacters

public static String removeExceptCharacters(String source,
                                            String characters)
removes any character which is not in characters from the source string

Parameters:
source - the string which will be modified
characters - the characters that are allowed to be in source
Returns:
a new string only with characters from the characters argument

removeCharacters

public static String removeCharacters(String source,
                                      String characters)
removes any character which is in characters from the source string

Parameters:
source - the string which will be modified
characters - the characters that are not allowed to be in source
Returns:
a new string without any characters from the characters argument

quicksilverContains

public static boolean quicksilverContains(String _str,
                                          String _searchString)
Matches strings like Q