public class UcaCollatorUsingIcu extends java.lang.Object implements SubstringMatcher
Note that in the case that the ICU libraries have not been loaded, then this class is not instantiated. However, the public static functions, e.g. getLocales() could in theory be accessed via an XSLT stylesheet (such as the documentation generators for example) and these invoke ICU features The guard function com.saxonica.config.JavaPlatformPE.hasICUCollator() can be used to check.
Modifier and Type | Class and Description |
---|---|
class |
UcaCollatorUsingIcu.Identical |
class |
UcaCollatorUsingIcu.Primary |
class |
UcaCollatorUsingIcu.Secondary |
static interface |
UcaCollatorUsingIcu.Strength |
class |
UcaCollatorUsingIcu.Tertiary |
Constructor and Description |
---|
UcaCollatorUsingIcu(java.lang.String uri)
Construct a collation from a given UCA-based collation URI
|
Modifier and Type | Method and Description |
---|---|
boolean |
comparesEqual(java.lang.CharSequence s1,
java.lang.CharSequence s2)
Compare two strings for equality.
|
int |
compareStrings(java.lang.CharSequence o1,
java.lang.CharSequence o2)
Compare two strings
|
boolean |
contains(java.lang.String s1,
java.lang.String s2)
Test whether one string contains another, according to the rules
of the XPath contains() function
|
boolean |
endsWith(java.lang.String s1,
java.lang.String s2)
Test whether one string ends with another, according to the rules
of the XPath ends-with() function
|
AtomicMatchKey |
getCollationKey(java.lang.CharSequence s)
Get a collation key for a String.
|
java.text.CollationKey |
getCollationKey(java.lang.String source)
Factory method to generate a collation key for a given string, using this collation
|
java.lang.String |
getCollationURI()
Get the collation URI.
|
com.ibm.icu.util.ULocale |
getLocale() |
static java.lang.String[] |
getLocales()
Return the locales supported in this version of ICU
Note that with Java 6 this method has been known to throw an array index exception from RuleBasedCollator,
With Java 7 this performs correctly and getAvailableLocales() does not appear to be
invoked from any of the UCA or numbering support.
|
com.ibm.icu.text.RuleBasedCollator |
getRuleBasedCollator()
Get the underlying ICU collator represention by this collation object
|
int |
getStrength() |
static java.lang.String |
getUCAVersion()
Return the version of UCA supported
|
int |
hashCode()
Get a hash code for the purpose of comparing whether this is the same collation as another.
|
void |
setProps(java.util.Properties props)
Set the properties for the UCA collation
|
void |
setStrength(int newStrength) |
java.lang.String |
show()
Display details of this collation
|
boolean |
startsWith(java.lang.String s1,
java.lang.String s2)
Test whether one string starts with another, according to the rules
of the XPath starts-with() function
|
java.lang.String |
substringAfter(java.lang.String s1,
java.lang.String s2)
Return the part of a string after a given substring, according to the rules
of the XPath substring-after() function
|
java.lang.String |
substringBefore(java.lang.String s1,
java.lang.String s2)
Return the part of a string before a given substring, according to the rules
of the XPath substring-before() function
|
public UcaCollatorUsingIcu(java.lang.String uri) throws XPathException
uri
- the collation URI, conforming to the syntax defined in the W3C
Functions and Operators specification.XPathException
- if the URI is invalidpublic static java.lang.String getUCAVersion()
public com.ibm.icu.text.RuleBasedCollator getRuleBasedCollator()
public static java.lang.String[] getLocales()
public java.lang.String show()
public java.text.CollationKey getCollationKey(java.lang.String source)
source
- the supplied stringObject.equals(Object)
and CollationKey.compareTo(CollationKey)
methods).public int hashCode()
hashCode
in class java.lang.Object
public void setProps(java.util.Properties props) throws XPathException
props
- the set of properties parsed from the UCA parametersXPathException
- if the properties are invalidpublic void setStrength(int newStrength)
public int getStrength()
public com.ibm.icu.util.ULocale getLocale()
public boolean comparesEqual(java.lang.CharSequence s1, java.lang.CharSequence s2)
StringCollator
comparesEqual
in interface StringCollator
s1
- the first strings2
- the second stringpublic java.lang.String getCollationURI()
StringCollator
getCollationURI
in interface StringCollator
public int compareStrings(java.lang.CharSequence o1, java.lang.CharSequence o2)
StringCollator
compareStrings
in interface StringCollator
o1
- the first stringo2
- the second stringpublic AtomicMatchKey getCollationKey(java.lang.CharSequence s)
StringCollator
getCollationKey
in interface StringCollator
s
- the string whose collation key is requiredpublic boolean contains(java.lang.String s1, java.lang.String s2)
contains
in interface SubstringMatcher
s1
- the containing strings2
- the contained stringpublic boolean endsWith(java.lang.String s1, java.lang.String s2)
endsWith
in interface SubstringMatcher
s1
- the containing strings2
- the contained stringpublic boolean startsWith(java.lang.String s1, java.lang.String s2)
startsWith
in interface SubstringMatcher
s1
- the containing strings2
- the contained stringpublic java.lang.String substringAfter(java.lang.String s1, java.lang.String s2)
substringAfter
in interface SubstringMatcher
s1
- the containing strings2
- the contained stringpublic java.lang.String substringBefore(java.lang.String s1, java.lang.String s2)
substringBefore
in interface SubstringMatcher
s1
- the containing strings2
- the contained stringCopyright (c) 2004-2020 Saxonica Limited. All rights reserved.