com.atlassian.jira.util
Class CaseFolding

java.lang.Object
  extended by com.atlassian.jira.util.CaseFolding

public class CaseFolding
extends java.lang.Object

Utility for case folding Java Strings. This follows the advice given here. Basically the value is case folded by calling String.toUpperCase(locale).toLowerCase(locale). This is a little better than calling only String.toLowerCase(locale). For example, in German the string "ß" upercase equilavent is "SS". If we only called only String.toLowerCase(java.util.Locale) we would store "ß"in the index which would make matching "SS" impossible. This does not always case fold correctly, for example the Turkish 'I', but it is a good compromise.

Since:
v4.0

Constructor Summary
CaseFolding()
           
 
Method Summary
static java.lang.String foldString(java.lang.String s1)
          Case fold the passed string using the ENGLISH locale.
static java.lang.String foldString(java.lang.String s1, java.util.Locale locale)
          Case fold the passed string using the passed locale.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CaseFolding

public CaseFolding()
Method Detail

foldString

public static java.lang.String foldString(java.lang.String s1)
Case fold the passed string using the ENGLISH locale.

Parameters:
s1 - the string to case fold. Cannot be null.
Returns:
the case folded string.

foldString

public static java.lang.String foldString(java.lang.String s1,
                                          java.util.Locale locale)
Case fold the passed string using the passed locale. You probaly should not use this method because setting a locale may result in non-standard case folding. For example, using the Turkish locale will case fold "I" into "ı" (dotless lowercase letter i).

Parameters:
s1 - the string to case fold. Cannot be null.
locale - the locale to use for folding. Cannot be null.
Returns:
the case folded string.


Copyright © 2002-2010 Atlassian. All Rights Reserved.