Package org.apache.commons.io.filefilter
Class RegexFileFilter
- java.lang.Object
-
- org.apache.commons.io.filefilter.AbstractFileFilter
-
- org.apache.commons.io.filefilter.RegexFileFilter
-
- All Implemented Interfaces:
FileFilter
,FilenameFilter
,Serializable
,IOFileFilter
public class RegexFileFilter extends AbstractFileFilter implements Serializable
Filters files using supplied regular expression(s).See java.util.regex.Pattern for regex matching rules.
e.g.
File dir = new File("."); FileFilter fileFilter = new RegexFileFilter("^.*[tT]est(-\\d+)?\\.java$"); File[] files = dir.listFiles(fileFilter); for (int i = 0; i < files.length; i++) { System.out.println(files[i]); }
- Since:
- 1.4
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from interface org.apache.commons.io.filefilter.IOFileFilter
EMPTY_STRING_ARRAY
-
-
Constructor Summary
Constructors Constructor Description RegexFileFilter(String pattern)
Construct a new regular expression filter.RegexFileFilter(String pattern, int flags)
Construct a new regular expression filter with the specified flags.RegexFileFilter(String pattern, IOCase caseSensitivity)
Construct a new regular expression filter with the specified flags case sensitivity.RegexFileFilter(Pattern pattern)
Construct a new regular expression filter for a compiled regular expression
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
accept(File dir, String name)
Checks to see if the file name matches one of the regular expressions.-
Methods inherited from class org.apache.commons.io.filefilter.AbstractFileFilter
accept, toString
-
-
-
-
Constructor Detail
-
RegexFileFilter
public RegexFileFilter(String pattern)
Construct a new regular expression filter.- Parameters:
pattern
- regular string expression to match- Throws:
IllegalArgumentException
- if the pattern is null
-
RegexFileFilter
public RegexFileFilter(String pattern, IOCase caseSensitivity)
Construct a new regular expression filter with the specified flags case sensitivity.- Parameters:
pattern
- regular string expression to matchcaseSensitivity
- how to handle case sensitivity, null means case-sensitive- Throws:
IllegalArgumentException
- if the pattern is null
-
RegexFileFilter
public RegexFileFilter(String pattern, int flags)
Construct a new regular expression filter with the specified flags.- Parameters:
pattern
- regular string expression to matchflags
- pattern flags - e.g.Pattern.CASE_INSENSITIVE
- Throws:
IllegalArgumentException
- if the pattern is null
-
RegexFileFilter
public RegexFileFilter(Pattern pattern)
Construct a new regular expression filter for a compiled regular expression- Parameters:
pattern
- regular expression to match- Throws:
IllegalArgumentException
- if the pattern is null
-
-
Method Detail
-
accept
public boolean accept(File dir, String name)
Checks to see if the file name matches one of the regular expressions.- Specified by:
accept
in interfaceFilenameFilter
- Specified by:
accept
in interfaceIOFileFilter
- Overrides:
accept
in classAbstractFileFilter
- Parameters:
dir
- the file directory (ignored)name
- the file name- Returns:
- true if the file name matches one of the regular expressions
-
-