Interface StringMatcher


public interface StringMatcher
Determines if a character array portion matches.
Since:
1.3
  • Method Summary

    Modifier and Type
    Method
    Description
    andThen(StringMatcher stringMatcher)
    Returns a matcher that matches this matcher followed by the given matcher.
    default int
    isMatch(char[] buffer, int pos)
    Returns the number of matching characters, zero for no match.
    int
    isMatch(char[] buffer, int start, int bufferStart, int bufferEnd)
    Returns the number of matching characters, 0 if there is no match.
    default int
    isMatch(CharSequence buffer, int pos)
    Returns the number of matching characters, zero for no match.
    default int
    isMatch(CharSequence buffer, int start, int bufferStart, int bufferEnd)
    Returns the number of matching characters, 0 if there is no match.
    default int
    Returns the size of the matching string.
  • Method Details

    • andThen

      default StringMatcher andThen(StringMatcher stringMatcher)
      Returns a matcher that matches this matcher followed by the given matcher.
      Parameters:
      stringMatcher - the next matcher.
      Returns:
      a matcher that matches this matcher followed by the given matcher.
      Since:
      1.9
    • isMatch

      default int isMatch(char[] buffer, int pos)
      Returns the number of matching characters, zero for no match.

      This method is called to check for a match. The parameter pos represents the current position to be checked in the string buffer (a character array which must not be changed). The API guarantees that pos is a valid index for buffer.

      The matching code may check one character or many. It may check characters preceding pos as well as those after.

      It must return zero for no match, or a positive number if a match was found. The number indicates the number of characters that matched.

      Parameters:
      buffer - the text content to match against, do not change
      pos - the starting position for the match, valid for buffer
      Returns:
      The number of matching characters, zero for no match
      Since:
      1.9
    • isMatch

      int isMatch(char[] buffer, int start, int bufferStart, int bufferEnd)
      Returns the number of matching characters, 0 if there is no match.

      This method is called to check for a match against a source buffer. The parameter start represents the start position to be checked in the buffer (a character array which MUST not be changed). The implementation SHOULD guarantees that start is a valid index in buffer.

      The character array may be larger than the active area to be matched. Only values in the buffer between the specified indices may be accessed, in other words: bufferStart <= start < bufferEnd.

      The matching code may check one character or many. It may check characters preceding start as well as those after, so long as no checks exceed the bounds specified.

      It must return zero for no match, or a positive number if a match was found. The number indicates the number of characters that matched.

      Parameters:
      buffer - the source text to search, do not change.
      start - the starting position for the match, valid in buffer.
      bufferStart - the first active index in the buffer, valid in buffer.
      bufferEnd - the end index (exclusive) of the active buffer, valid in buffer.
      Returns:
      The number of matching characters, zero if there is no match.
    • isMatch

      default int isMatch(CharSequence buffer, int pos)
      Returns the number of matching characters, zero for no match.

      This method is called to check for a match. The parameter pos represents the current position to be checked in the string buffer (a character array which must not be changed). The API guarantees that pos is a valid index for buffer.

      The matching code may check one character or many. It may check characters preceding pos as well as those after.

      It must return zero for no match, or a positive number if a match was found. The number indicates the number of characters that matched.

      Parameters:
      buffer - the text content to match against, do not change
      pos - the starting position for the match, valid for buffer
      Returns:
      The number of matching characters, zero for no match
      Since:
      1.9
    • isMatch

      default int isMatch(CharSequence buffer, int start, int bufferStart, int bufferEnd)
      Returns the number of matching characters, 0 if there is no match.

      This method is called to check for a match against a source buffer. The parameter start represents the start position to be checked in the buffer (a character array which MUST not be changed). The implementation SHOULD guarantees that start is a valid index in buffer.

      The character array may be larger than the active area to be matched. Only values in the buffer between the specified indices may be accessed, in other words: bufferStart <= start < bufferEnd.

      The matching code may check one character or many. It may check characters preceding start as well as those after, so long as no checks exceed the bounds specified.

      It must return zero for no match, or a positive number if a match was found. The number indicates the number of characters that matched.

      Parameters:
      buffer - the source text to search, do not change.
      start - the starting position for the match, valid in buffer.
      bufferStart - the first active index in the buffer, valid in buffer.
      bufferEnd - the end index (exclusive) of the active buffer, valid in buffer.
      Returns:
      The number of matching characters, zero if there is no match.
      Since:
      1.9
    • size

      default int size()
      Returns the size of the matching string. Defaults to 0.
      Returns:
      the size of the matching string.
      Since:
      1.9