Package org.codehaus.janino.util
Class StringPattern
- java.lang.Object
-
- org.codehaus.janino.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
static StringPattern[]
PATTERNS_NONE
-
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)
Match 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
Notice: Themode
flag of the current instance does not take any effect here.static boolean
matches(StringPattern[] patterns, java.lang.String text)
Match a giventext
against an array ofStringPattern
s (which was typically created byparseCombinedPattern(String)
.static StringPattern[]
parseCombinedPattern(java.lang.String combinedPattern)
Parse 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
-
PATTERNS_NONE
public static final StringPattern[] PATTERNS_NONE
-
-
Method Detail
-
getMode
public int getMode()
-
matches
public boolean matches(java.lang.String text)
Match 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
mode
flag of the current instance does not take any effect here. -
A
-
parseCombinedPattern
public static StringPattern[] parseCombinedPattern(java.lang.String combinedPattern)
Parse 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 theStringPattern
is created with modeEXCLUDE
, otherwise with modeINCLUDE
.
-
matches
public static boolean matches(StringPattern[] patterns, java.lang.String text)
Match 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
-
-