org.apache.nutch.util

## Class PrefixStringMatcher

- java.lang.Object
- - org.apache.nutch.util.TrieStringMatcher
  - - org.apache.nutch.util.PrefixStringMatcher

-     public class PrefixStringMatcher
      extends TrieStringMatcher

  A class for efficiently matching `String`s against a set of prefixes.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.apache.nutch.util.TrieStringMatcher

      `TrieStringMatcher.TrieNode`

  - ### Field Summary

    - ### Fields inherited from class org.apache.nutch.util.TrieStringMatcher

      `root`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `PrefixStringMatcher(Collection<String> prefixes)` Creates a new `PrefixStringMatcher` which will match `String`s with any prefix in the supplied `Collection`.
    `PrefixStringMatcher(String[] prefixes)` Creates a new `PrefixStringMatcher` which will match `String`s with any prefix in the supplied array.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `longestMatch(String input)` Returns the longest prefix of `input` that is matched, or `null` if no match exists.
    `static void` | `main(String[] argv)`
    `boolean` | `matches(String input)` Returns true if the given `String` is matched by a prefix in the trie
    `String` | `shortestMatch(String input)` Returns the shortest prefix of `input` that is matched, or `null` if no match exists.

    - ### Methods inherited from class org.apache.nutch.util.TrieStringMatcher

      `addPatternBackward, addPatternForward, matchChar`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### PrefixStringMatcher

          public PrefixStringMatcher(String[] prefixes)

      Creates a new `PrefixStringMatcher` which will match `String`s with any prefix in the supplied array. Zero-length `Strings` are ignored.

    - #### PrefixStringMatcher

          public PrefixStringMatcher(Collection<String> prefixes)

      Creates a new `PrefixStringMatcher` which will match `String`s with any prefix in the supplied `Collection`.
      Throws:
        `ClassCastException` - if any `Object`s in the collection are not `String`s

  - ### Method Detail

    - #### matches

          public boolean matches(String input)

      Returns true if the given `String` is matched by a prefix in the trie
      Specified by:
        `matches` in class `TrieStringMatcher`

    - #### shortestMatch

          public String shortestMatch(String input)

      Returns the shortest prefix of `input` that is matched, or `null` if no match exists.
      Specified by:
        `shortestMatch` in class `TrieStringMatcher`

    - #### longestMatch

          public String longestMatch(String input)

      Returns the longest prefix of `input` that is matched, or `null` if no match exists.
      Specified by:
        `longestMatch` in class `TrieStringMatcher`

    - #### main

          public static final void main(String[] argv)

Copyright © 2021 The Apache Software Foundation