Package org.refcodes.matcher
Class RegExpMatcherImpl
- java.lang.Object
-
- org.refcodes.matcher.RegExpMatcherImpl
-
- All Implemented Interfaces:
Matcher<String>
,RegExpMatcher
,WildcardMatcher
,org.refcodes.mixin.PatternAccessor
public class RegExpMatcherImpl extends Object implements RegExpMatcher
Implements thePathMatcher
interface.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.refcodes.mixin.PatternAccessor
org.refcodes.mixin.PatternAccessor.PatternBuilder<B extends org.refcodes.mixin.PatternAccessor.PatternBuilder<?>>, org.refcodes.mixin.PatternAccessor.PatternMutator, org.refcodes.mixin.PatternAccessor.PatternProperty
-
-
Constructor Summary
Constructors Constructor Description RegExpMatcherImpl(String aRegExp)
Constructs aPattern
matcher.RegExpMatcherImpl(Pattern aRegExp)
Constructs aPattern
matcher.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(Object obj)
Pattern
getPattern()
Returns the path pattern being used by theRegExpMatcher
.String[]
getWildcardNames()
Retrieves the list of wildcard names identifying the wildcards as specified by the pattern.int
hashCode()
boolean
isMatching(String aText)
Tests whether the given event is matching the mathcer's criteria.String
toPattern()
For debugging purposes, retrieve the regex pattern created from the ANT path pattern.String
toWildcardReplacement(String aText, String aWildcardName)
Returns the wildcard substitute for the wildcards in your pattern compared to the actual text.String
toWildcardReplacementAt(String aText, int aIndex)
Returns the wildcard substitute for the wildcards in your pattern compared to the actual text (as ofWildcardMatcher.toWildcardSubstitutes(String)
).String[]
toWildcardReplacements(String aText)
Returns an array of the wildcard substitutes for the wildcards in your pattern compared to the actual text (as ofWildcardMatcher.toWildcardSubstitutes(String)
).String[]
toWildcardReplacements(String aText, String... aWildcardNames)
Returns the wildcard substitutes for the wildcards in your pattern compared to the actual text .String[]
toWildcardReplacementsAt(String aText, int... aIndexes)
Returns the wildcard substitutes for the wildcards in your pattern compared to the actual text.WildcardSubstitutes
toWildcardSubstitutes(String aText)
Returns all available wildcard substitutes as well as the named wildcard substitutes.
-
-
-
Constructor Detail
-
RegExpMatcherImpl
public RegExpMatcherImpl(Pattern aRegExp)
Constructs aPattern
matcher.- Parameters:
aRegExp
- The pattern to be used when matching a path viaisMatching(String)
.
-
RegExpMatcherImpl
public RegExpMatcherImpl(String aRegExp) throws PatternSyntaxException
Constructs aPattern
matcher.- Parameters:
aRegExp
- The pattern to be used when matching a path viaisMatching(String)
.- Throws:
PatternSyntaxException
- Thrown if the expression's syntax is invalid
-
-
Method Detail
-
getWildcardNames
public String[] getWildcardNames()
Retrieves the list of wildcard names identifying the wildcards as specified by the pattern.- Specified by:
getWildcardNames
in interfaceWildcardMatcher
- Returns:
- The wild card names or null of no wild card names have been defined.
-
getPattern
public Pattern getPattern()
Returns the path pattern being used by theRegExpMatcher
.- Specified by:
getPattern
in interfaceorg.refcodes.mixin.PatternAccessor
- Specified by:
getPattern
in interfaceRegExpMatcher
- Returns:
- The path pattern being used.
-
isMatching
public boolean isMatching(String aText)
Tests whether the given event is matching the mathcer's criteria.- Specified by:
isMatching
in interfaceMatcher<String>
- Specified by:
isMatching
in interfaceRegExpMatcher
- Parameters:
aText
- The matchee used for testing matchability.- Returns:
- True in case the matchee matches the matcher's criteria, else false.
-
toWildcardSubstitutes
public WildcardSubstitutes toWildcardSubstitutes(String aText)
Returns all available wildcard substitutes as well as the named wildcard substitutes.- Specified by:
toWildcardSubstitutes
in interfaceWildcardMatcher
- Parameters:
aText
- Tex textfor which to retrieve the wildcard substitutes.- Returns:
- The
WildcardSubstitutes
of the wildcards being substituted.
-
toWildcardReplacements
public String[] toWildcardReplacements(String aText)
Returns an array of the wildcard substitutes for the wildcards in your pattern compared to the actual text (as ofWildcardMatcher.toWildcardSubstitutes(String)
). The order of the wildcard substitutes aligns to the order of the wildcards (from left to right) defined in your pattern.- Specified by:
toWildcardReplacements
in interfaceWildcardMatcher
- Parameters:
aText
- Tex textfor which to retrieve the wildcard substitutes.- Returns:
- The text substituting the wildcards in the order of the wildcards being substituted or null if there are none such substitutes.
-
toWildcardReplacementAt
public String toWildcardReplacementAt(String aText, int aIndex)
Returns the wildcard substitute for the wildcards in your pattern compared to the actual text (as ofWildcardMatcher.toWildcardSubstitutes(String)
). The text of the wildcard substitute aligns to the index of the wildcard (from left to right) as defined in your pattern.- Specified by:
toWildcardReplacementAt
in interfaceWildcardMatcher
- Parameters:
aText
- Tex textfor which to retrieve the wildcard substitutes.aIndex
- The index of the wildcard in question for which to retrieve the substitute.- Returns:
- The text substituting the wildcard at the given pattern's wildcard index or null if there is none such substitute.
-
toWildcardReplacementsAt
public String[] toWildcardReplacementsAt(String aText, int... aIndexes)
Returns the wildcard substitutes for the wildcards in your pattern compared to the actual text. The text of the wildcard substitutes aligns to the indexes of the wildcard (from left to right) as defined in your pattern.- Specified by:
toWildcardReplacementsAt
in interfaceWildcardMatcher
- Parameters:
aText
- Tex textfor which to retrieve the wildcard substitutes.aIndexes
- The indexes of the wildcards in question for which to retrieve the substitutes.- Returns:
- The text substituting the wildcards at the given pattern's wildcard indexes or null if there is none such substitute.
-
toWildcardReplacement
public String toWildcardReplacement(String aText, String aWildcardName)
Returns the wildcard substitute for the wildcards in your pattern compared to the actual text. The text of the wildcard substitute aligns to the name of the wildcard (as defined in your pattern).- Specified by:
toWildcardReplacement
in interfaceWildcardMatcher
- Parameters:
aText
- Tex textfor which to retrieve the wildcard substitutes.aWildcardName
- The name of the wildcard in question for which to retrieve the substitute.- Returns:
- The text substituting the wildcard with the given pattern's wildcard name or null if there is none such substitute.
-
toWildcardReplacements
public String[] toWildcardReplacements(String aText, String... aWildcardNames)
Returns the wildcard substitutes for the wildcards in your pattern compared to the actual text . The text of the wildcard substitutes aligns to the order of the provided wildcard names (as defined in your pattern).- Specified by:
toWildcardReplacements
in interfaceWildcardMatcher
- Parameters:
aText
- Tex textfor which to retrieve the wildcard substitutes.aWildcardNames
- The names of the wildcards in question for which to retrieve the substitutes in the order of the provided names.- Returns:
- The text substituting the wildcard with the given pattern's wildcard names or null if there are none such substitute.
-
toPattern
public String toPattern()
For debugging purposes, retrieve the regex pattern created from the ANT path pattern.- Returns:
- Returns the regex created from the ANT path pattern.
-
-