## net.sf.saxon.expr.sort
Interface SubstringMatcher

All Superinterfaces:
  Serializable, StringCollator

All Known Implementing Classes:
  CodepointCollator, RuleBasedSubstringMatcher

    public interface SubstringMatcher

extends StringCollator

This interface is implemented by a collation that is capable of supporting the XPath functions that require matching of a substring: namely contains(), starts-with, ends-with, substring-before, and substring-after. For sorting and comparing strings, a collation needs to implement only the `StringCollator` interface; for matching of substrings, it must also implement this interface.

Method Summary
`boolean` `contains(String s1, String s2)` Test whether one string contains another, according to the rules of the XPath contains() function
`boolean` `endsWith(String s1, String s2)` Test whether one string ends with another, according to the rules of the XPath ends-with() function
`boolean` `startsWith(String s1, String s2)` Test whether one string starts with another, according to the rules of the XPath starts-with() function
`String` `substringAfter(String s1, String s2)` Return the part of a string after a given substring, according to the rules of the XPath substring-after() function
`String` `substringBefore(String s1, String s2)` Return the part of a string before a given substring, according to the rules of the XPath substring-before() function

Methods inherited from interface net.sf.saxon.lib.StringCollator
`comparesEqual, compareStrings, getCollationKey`

Method Detail

### contains

    boolean contains(String s1,
                     String s2)

  Test whether one string contains another, according to the rules of the XPath contains() function

  Parameters:
    `s1` - the containing string
    `s2` - the contained string
  Returns:
    true iff s1 contains s2

### startsWith

    boolean startsWith(String s1,
                       String s2)

  Test whether one string starts with another, according to the rules of the XPath starts-with() function

  Parameters:
    `s1` - the containing string
    `s2` - the contained string
  Returns:
    true iff s1 starts with s2

### endsWith

    boolean endsWith(String s1,
                     String s2)

  Test whether one string ends with another, according to the rules of the XPath ends-with() function

  Parameters:
    `s1` - the containing string
    `s2` - the contained string
  Returns:
    true iff s1 ends with s2

### substringBefore

    String substringBefore(String s1,
                           String s2)

  Return the part of a string before a given substring, according to the rules of the XPath substring-before() function

  Parameters:
    `s1` - the containing string
    `s2` - the contained string
  Returns:
    the part of s1 that precedes the first occurrence of s2

### substringAfter

    String substringAfter(String s1,
                          String s2)

  Return the part of a string after a given substring, according to the rules of the XPath substring-after() function

  Parameters:
    `s1` - the containing string
    `s2` - the contained string
  Returns:
    the part of s1 that follows the first occurrence of s2

Copyright (c) 2004-2010 Saxonica Limited. All rights reserved.