Class SearchPattern

java.lang.Object
org.eclipse.jetty.util.SearchPattern

@Deprecated(since="2021-05-27") public class SearchPattern extends Object
Deprecated.
The Eclipse Jetty and Apache Felix Http Jetty packages are no longer supported.
SearchPattern Fast search for patterns within strings and arrays of bytes. Uses an implementation of the Boyer–Moore–Horspool algorithm with a 256 character alphabet. The algorithm has an average-case complexity of O(n) on random text and O(nm) in the worst case. where: m = pattern length n = length of data to search
  • Method Summary

    Modifier and Type
    Method
    Description
    compile(byte[] pattern)
    Deprecated.
    Produces a SearchPattern instance which can be used to find matches of the pattern in data
    compile(String pattern)
    Deprecated.
    Produces a SearchPattern instance which can be used to find matches of the pattern in data
    int
    endsWith(byte[] data, int offset, int length)
    Deprecated.
    Search for a partial match of the pattern at the end of the data.
    int
    Deprecated.
     
    int
    match(byte[] data, int offset, int length)
    Deprecated.
    Search for a complete match of the pattern within the data
    int
    startsWith(byte[] data, int offset, int length, int matched)
    Deprecated.
    Search for a possibly partial match of the pattern at the start of the data.

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • compile

      public static SearchPattern compile(byte[] pattern)
      Deprecated.
      Produces a SearchPattern instance which can be used to find matches of the pattern in data
      Parameters:
      pattern - byte array containing the pattern
      Returns:
      a new SearchPattern instance using the given pattern
    • compile

      public static SearchPattern compile(String pattern)
      Deprecated.
      Produces a SearchPattern instance which can be used to find matches of the pattern in data
      Parameters:
      pattern - string containing the pattern
      Returns:
      a new SearchPattern instance using the given pattern
    • match

      public int match(byte[] data, int offset, int length)
      Deprecated.
      Search for a complete match of the pattern within the data
      Parameters:
      data - The data in which to search for. The data may be arbitrary binary data, but the pattern will always be StandardCharsets.US_ASCII encoded.
      offset - The offset within the data to start the search
      length - The length of the data to search
      Returns:
      The index within the data array at which the first instance of the pattern or -1 if not found
    • endsWith

      public int endsWith(byte[] data, int offset, int length)
      Deprecated.
      Search for a partial match of the pattern at the end of the data.
      Parameters:
      data - The data in which to search for. The data may be arbitrary binary data, but the pattern will always be StandardCharsets.US_ASCII encoded.
      offset - The offset within the data to start the search
      length - The length of the data to search
      Returns:
      the length of the partial pattern matched and 0 for no match.
    • startsWith

      public int startsWith(byte[] data, int offset, int length, int matched)
      Deprecated.
      Search for a possibly partial match of the pattern at the start of the data.
      Parameters:
      data - The data in which to search for. The data may be arbitrary binary data, but the pattern will always be StandardCharsets.US_ASCII encoded.
      offset - The offset within the data to start the search
      length - The length of the data to search
      matched - The length of the partial pattern already matched
      Returns:
      the length of the partial pattern matched and 0 for no match.
    • getLength

      public int getLength()
      Deprecated.
      Returns:
      The length of the pattern in bytes.