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
`static TokenizedPattern` `EMPTY_PATTERN` Instance that holds no tokens at all.

### Constructor Summary

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

### Method Summary

All Methods Instance Methods Concrete Methods
`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 Detail

#### EMPTY_PATTERN

    public static final TokenizedPattern EMPTY_PATTERN

Instance that holds no tokens at all.

### Constructor Detail

#### 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 Detail

#### 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.

#### 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`

#### hashCode

    public int hashCode()

Overrides:
  `hashCode` in class `java.lang.Object`

#### depth

    public int depth()

The depth (or length) of a pattern.

#### containsPattern

    public boolean containsPattern(java.lang.String pat)

Does the tokenized pattern contain the given string?

#### 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.

#### withoutLastToken

    public TokenizedPattern withoutLastToken()

Returns a new pattern without the last token of this pattern.