Class LineContainsRegExp

All Implemented Interfaces:
Closeable, AutoCloseable, Readable, ChainableReader, Parameterizable

public final class LineContainsRegExp extends BaseParamFilterReader implements ChainableReader
Filter which includes only those lines that contain the user-specified regular expression matching strings. Example:
<linecontainsregexp>
   <regexp pattern="foo*">
 </linecontainsregexp>
Or:
<filterreader classname="org.apache.tools.ant.filters.LineContainsRegExp">
    <param type="regexp" value="foo*"/>
 </filterreader>
This will fetch all those lines that contain the pattern foo
  • Constructor Details

    • LineContainsRegExp

      public LineContainsRegExp()
      Constructor for "dummy" instances.
      See Also:
    • LineContainsRegExp

      public LineContainsRegExp(Reader in)
      Creates a new filtered reader.
      Parameters:
      in - A Reader object providing the underlying stream. Must not be null.
  • Method Details

    • read

      public int read() throws IOException
      Returns the next character in the filtered stream, only including lines from the original stream which match all of the specified regular expressions.
      Overrides:
      read in class FilterReader
      Returns:
      the next character in the resulting stream, or -1 if the end of the resulting stream has been reached
      Throws:
      IOException - if the underlying stream throws an IOException during reading
    • addConfiguredRegexp

      public void addConfiguredRegexp(RegularExpression regExp)
      Adds a regexp element.
      Parameters:
      regExp - The regexp element to add. Must not be null.
    • chain

      public Reader chain(Reader rdr)
      Creates a new LineContainsRegExp using the passed in Reader for instantiation.
      Specified by:
      chain in interface ChainableReader
      Parameters:
      rdr - A Reader object providing the underlying stream. Must not be null.
      Returns:
      a new filter based on this configuration, but filtering the specified reader
    • setNegate

      public void setNegate(boolean b)
      Set the negation mode. Default false (no negation).
      Parameters:
      b - the boolean negation mode to set.
    • setCaseSensitive

      public void setCaseSensitive(boolean b)
      Whether to match casesensitively.
      Parameters:
      b - boolean
      Since:
      Ant 1.8.2
    • isNegated

      public boolean isNegated()
      Find out whether we have been negated.
      Returns:
      boolean negation flag.
    • setRegexp

      public void setRegexp(String pattern)
      Set the regular expression as an attribute.
      Parameters:
      pattern - String
      Since:
      Ant 1.10.2