Class StringPattern
- java.lang.Object
-
- org.codehaus.commons.compiler.util.StringPattern
-
public class StringPattern extends java.lang.Object
Implementation of a UNIX shell-like string pattern algorithm.Additionally, the concept of the "combined pattern" is supported (see
matches(StringPattern[], String)
.
-
-
Field Summary
Fields Modifier and Type Field Description static int
EXCLUDE
static int
INCLUDE
static StringPattern[]
PATTERNS_ALL
AStringPattern
that matches any subject.static StringPattern[]
PATTERNS_NONE
AStringPattern
that matches no subject whatsoever.
-
Constructor Summary
Constructors Constructor Description StringPattern(int mode, java.lang.String pattern)
StringPattern(java.lang.String pattern)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description int
getMode()
boolean
matches(java.lang.String text)
Matches the giventext
against the pattern represented by the current instance, as follows: A*
in the pattern matches any sequence of zero or more characters in thetext
A?
in the pattern matches exactly one character in thetext
Any other character in the pattern must appear exactly as it is in thetext
static boolean
matches(StringPattern[] patterns, java.lang.String text)
Matchs a giventext
against an array ofStringPattern
s (which was typically created byparseCombinedPattern(String)
.static StringPattern[]
parseCombinedPattern(java.lang.String combinedPattern)
Parses a "combined pattern" into an array ofStringPattern
s.java.lang.String
toString()
-
-
-
Field Detail
-
INCLUDE
public static final int INCLUDE
-
EXCLUDE
public static final int EXCLUDE
-
PATTERNS_ALL
public static final StringPattern[] PATTERNS_ALL
AStringPattern
that matches any subject.
-
PATTERNS_NONE
public static final StringPattern[] PATTERNS_NONE
AStringPattern
that matches no subject whatsoever.
-
-
Method Detail
-
getMode
public int getMode()
- Returns:
- Whether this
StringPattern
represents inclusion (INCLUDE
) or exclusion exclusion (EXCLUDE
) of subjects
-
matches
public boolean matches(java.lang.String text)
Matches the giventext
against the pattern represented by the current instance, as follows:-
A
*
in the pattern matches any sequence of zero or more characters in thetext
-
A
?
in the pattern matches exactly one character in thetext
-
Any other character in the pattern must appear exactly as it is in the
text
Notice: The
mode
flag of the current instance does not take any effect here. -
A
-
parseCombinedPattern
public static StringPattern[] parseCombinedPattern(java.lang.String combinedPattern)
Parses a "combined pattern" into an array ofStringPattern
s. A combined pattern string is structured as follows:combined-pattern := [ '+' | '-' ] pattern { ( '+' | '-' ) pattern }
If a pattern is preceeded with a '-', then the
StringPattern
is created with modeEXCLUDE
, otherwise with modeINCLUDE
.
-
matches
public static boolean matches(StringPattern[] patterns, java.lang.String text)
Matchs a giventext
against an array ofStringPattern
s (which was typically created byparseCombinedPattern(String)
.The last matching pattern takes effect; if its mode is
INCLUDE
, thentrue
is returned, if its mode isEXCLUDE
, thenfalse
is returned.If
patterns
isPATTERNS_NONE
, or empty, or none of its patterns matches, thenfalse
is returned.If
patterns
isPATTERNS_ALL
, thentrue
is returned.For backwards compatibility,
null
patterns are treated likePATTERNS_NONE
.
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-