Package org.apache.tools.ant.types.selectors

# Class TokenizedPattern

java.lang.Object
org.apache.tools.ant.types.selectors.TokenizedPattern

    public class TokenizedPattern
    extends java.lang.Object

Provides reusable path pattern matching. PathPattern is preferable to equivalent SelectorUtils methods if you need to execute multiple matching with the same pattern because here the pattern itself will be parsed only once.

Since:
  1.8.0
See Also:
  `SelectorUtils.matchPath(String, String)`, `SelectorUtils.matchPath(String, String, boolean)`

- ## Field Summary

  Fields
  Modifier and Type | Field | Description
  --- | --- | ---
  `static TokenizedPattern` | `EMPTY_PATTERN` | Instance that holds no tokens at all.

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `TokenizedPattern​(java.lang.String pattern)` | Initialize the PathPattern by parsing it.

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `boolean` | `containsPattern​(java.lang.String pat)` | Does the tokenized pattern contain the given string?
  `int` | `depth()` | The depth (or length) of a pattern.
  `boolean` | `endsWith​(java.lang.String s)` | true if the last token equals the given string.
  `boolean` | `equals​(java.lang.Object o)` | true if the original patterns are equal.
  `java.lang.String` | `getPattern()` |
  `int` | `hashCode()` |
  `boolean` | `matchPath​(TokenizedPath path, boolean isCaseSensitive)` | Tests whether or not a given path matches a given pattern.
  `boolean` | `matchStartOf​(TokenizedPath path, boolean caseSensitive)` | Tests whether or not this pattern matches the start of a path.
  `TokenizedPath` | `rtrimWildcardTokens()` | Returns a new TokenizedPath where all tokens of this pattern to the right containing wildcards have been removed
  `java.lang.String` | `toString()` |
  `TokenizedPattern` | `withoutLastToken()` | Returns a new pattern without the last token of this pattern.

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

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- ## Field Details

  - ### EMPTY_PATTERN

    public static final TokenizedPattern EMPTY_PATTERN
    Instance that holds no tokens at all.

- ## Constructor Details

  - ### TokenizedPattern

    public TokenizedPattern​(java.lang.String pattern)
    Initialize the PathPattern by parsing it.
    Parameters:
      `pattern` - The pattern to match against. Must not be `null`.

- ## Method Details

  - ### matchPath

    public boolean matchPath​(TokenizedPath path, boolean isCaseSensitive)
    Tests whether or not a given path matches a given pattern.
    Parameters:
      `path` - The path to match, as a String. Must not be `null`.
      `isCaseSensitive` - Whether or not matching should be performed case sensitively.
    Returns:
      `true` if the pattern matches against the string, or `false` otherwise.

  - ### matchStartOf

    public boolean matchStartOf​(TokenizedPath path, boolean caseSensitive)
    Tests whether or not this pattern matches the start of a path.
    Parameters:
      `path` - TokenizedPath
      `caseSensitive` - boolean
    Returns:
      boolean

  - ### toString

    public java.lang.String toString()
    Overrides:
      `toString` in class `java.lang.Object`
    Returns:
      The pattern String

  - ### getPattern

    public java.lang.String getPattern()

  - ### equals

    public boolean equals​(java.lang.Object o)
    true if the original patterns are equal.
    Overrides:
      `equals` in class `java.lang.Object`
    Parameters:
      `o` - Object

  - ### hashCode

    public int hashCode()
    Overrides:
      `hashCode` in class `java.lang.Object`

  - ### depth

    public int depth()
    The depth (or length) of a pattern.
    Returns:
      int

  - ### containsPattern

    public boolean containsPattern​(java.lang.String pat)
    Does the tokenized pattern contain the given string?
    Parameters:
      `pat` - String
    Returns:
      boolean

  - ### rtrimWildcardTokens

    public TokenizedPath rtrimWildcardTokens()
    Returns a new TokenizedPath where all tokens of this pattern to the right containing wildcards have been removed
    Returns:
      the leftmost part of the pattern without wildcards

  - ### endsWith

    public boolean endsWith​(java.lang.String s)
    true if the last token equals the given string.
    Parameters:
      `s` - String
    Returns:
      boolean

  - ### withoutLastToken

    public TokenizedPattern withoutLastToken()
    Returns a new pattern without the last token of this pattern.
    Returns:
      TokenizedPattern