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 | Field and Description |
---|---|
int[] |
maxIgnorable |
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(UnicodeString s1,
UnicodeString s2)
Compare two strings for equality.
|
int |
compareStrings(UnicodeString o1,
UnicodeString o2)
Compare two strings
|
boolean |
contains(UnicodeString s1,
UnicodeString s2)
Test whether one string contains another, according to the rules
of the XPath contains() function
|
boolean |
endsWith(UnicodeString s1,
UnicodeString s2)
Test whether one string ends with another, according to the rules
of the XPath ends-with() function
|
java.text.CollationKey |
getCollationKey(java.lang.String source)
Factory method to generate a collation key for a given string, using this collation
|
AtomicMatchKey |
getCollationKey(UnicodeString s)
Get a collation key for a String.
|
java.lang.String |
getCollationURI()
Get the collation URI.
|
com.ibm.icu.text.RuleBasedCollator |
getRuleBasedCollator()
Get the underlying ICU collator represented 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(UnicodeString s1,
UnicodeString s2)
Test whether one string starts with another, according to the rules
of the XPath starts-with() function
|
UnicodeString |
substringAfter(UnicodeString s1,
UnicodeString s2)
Return the part of a string after a given substring, according to the rules
of the XPath substring-after() function
|
UnicodeString |
substringBefore(UnicodeString s1,
UnicodeString 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 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 boolean comparesEqual(UnicodeString s1, UnicodeString 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(UnicodeString o1, UnicodeString o2)
StringCollator
compareStrings
in interface StringCollator
o1
- the first stringo2
- the second stringpublic AtomicMatchKey getCollationKey(UnicodeString s)
StringCollator
getCollationKey
in interface StringCollator
s
- the string whose collation key is requiredpublic boolean contains(UnicodeString s1, UnicodeString s2)
contains
in interface SubstringMatcher
s1
- the containing strings2
- the contained stringpublic boolean endsWith(UnicodeString s1, UnicodeString s2)
endsWith
in interface SubstringMatcher
s1
- the containing strings2
- the contained stringpublic boolean startsWith(UnicodeString s1, UnicodeString s2)
startsWith
in interface SubstringMatcher
s1
- the containing strings2
- the contained stringpublic UnicodeString substringAfter(UnicodeString s1, UnicodeString s2)
substringAfter
in interface SubstringMatcher
s1
- the containing strings2
- the contained stringpublic UnicodeString substringBefore(UnicodeString s1, UnicodeString s2)
substringBefore
in interface SubstringMatcher
s1
- the containing strings2
- the contained stringCopyright (c) 2004-2022 Saxonica Limited. All rights reserved.