org.apache.tools.ant.types.selectors

## Class ContainsRegexpSelector

- java.lang.Object
- - org.apache.tools.ant.ProjectComponent
  - - org.apache.tools.ant.types.DataType
    - - org.apache.tools.ant.types.selectors.BaseSelector
      - - org.apache.tools.ant.types.selectors.BaseExtendSelector
        - - org.apache.tools.ant.types.selectors.ContainsRegexpSelector

- All Implemented Interfaces:
    java.lang.Cloneable, Parameterizable, ResourceSelector, ExtendFileSelector, FileSelector

      public class ContainsRegexpSelector
      extends BaseExtendSelector
      implements ResourceSelector

  Selector that filters files based on a regular expression.
  Since:
    Ant 1.6

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `EXPRESSION_KEY` Key to used for parameterized custom selector

    - ### Fields inherited from class org.apache.tools.ant.types.selectors.BaseExtendSelector

      `parameters`

    - ### Fields inherited from class org.apache.tools.ant.types.DataType

      `checked, ref`

    - ### Fields inherited from class org.apache.tools.ant.ProjectComponent

      `description, location, project`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ContainsRegexpSelector()` Creates a new `ContainsRegexpSelector` instance.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `isSelected(java.io.File basedir, java.lang.String filename, java.io.File file)` Tests a regular expression against each line of text in the file.
    `boolean` | `isSelected(Resource r)` Tests a regular expression against each line of text in a Resource.
    `void` | `setCaseSensitive(boolean b)` Whether to ignore case or not.
    `void` | `setExpression(java.lang.String theexpression)` The regular expression used to search the file.
    `void` | `setMultiLine(boolean b)` Whether to match should be multiline.
    `void` | `setParameters(Parameter[] parameters)` When using this as a custom selector, this method will be called.
    `void` | `setSingleLine(boolean b)` Whether to treat input as singleline ('.' matches newline).
    `java.lang.String` | `toString()` Basic DataType toString().
    `void` | `verifySettings()` Checks that an expression was specified.

    - ### Methods inherited from class org.apache.tools.ant.types.selectors.BaseExtendSelector

      `getParameters`

    - ### Methods inherited from class org.apache.tools.ant.types.selectors.BaseSelector

      `getError, setError, setError, validate`

    - ### Methods inherited from class org.apache.tools.ant.types.DataType

      `checkAttributesAllowed, checkChildrenAllowed, circularReference, clone, dieOnCircularReference, dieOnCircularReference, dieOnCircularReference, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getDataTypeName, getRefid, invokeCircularReferenceCheck, isChecked, isReference, noChildrenAllowed, pushAndInvokeCircularReferenceCheck, setChecked, setRefid, tooManyAttributes`

    - ### Methods inherited from class org.apache.tools.ant.ProjectComponent

      `getDescription, getLocation, getProject, log, log, setDescription, setLocation, setProject`

    - ### Methods inherited from class java.lang.Object

      `equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### EXPRESSION_KEY

          public static final java.lang.String EXPRESSION_KEY

      Key to used for parameterized custom selector
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### ContainsRegexpSelector

          public ContainsRegexpSelector()

      Creates a new `ContainsRegexpSelector` instance.

  - ### Method Detail

    - #### toString

          public java.lang.String toString()

      Description copied from class: `DataType`
      Basic DataType toString().
      Overrides:
        `toString` in class `DataType`
      Returns:
        a string describing this object

    - #### setExpression

          public void setExpression(java.lang.String theexpression)

      The regular expression used to search the file.
      Parameters:
        `theexpression` - this must match a line in the file to be selected.

    - #### setCaseSensitive

          public void setCaseSensitive(boolean b)

      Whether to ignore case or not.
      Parameters:
        `b` - if false, ignore case.
      Since:
        Ant 1.8.2

    - #### setMultiLine

          public void setMultiLine(boolean b)

      Whether to match should be multiline.
      Parameters:
        `b` - the value to set.
      Since:
        Ant 1.8.2

    - #### setSingleLine

          public void setSingleLine(boolean b)

      Whether to treat input as singleline ('.' matches newline). Corresponds to java.util.regex.Pattern.DOTALL.
      Parameters:
        `b` - the value to set.
      Since:
        Ant 1.8.2

    - #### setParameters

          public void setParameters(Parameter[] parameters)

      When using this as a custom selector, this method will be called. It translates each parameter into the appropriate setXXX() call.
      Specified by:
        `setParameters` in interface `Parameterizable`
      Overrides:
        `setParameters` in class `BaseExtendSelector`
      Parameters:
        `parameters` - the complete set of parameters for this selector

    - #### verifySettings

          public void verifySettings()

      Checks that an expression was specified.
      Overrides:
        `verifySettings` in class `BaseSelector`

    - #### isSelected

          public boolean isSelected(java.io.File basedir,
                                    java.lang.String filename,
                                    java.io.File file)

      Tests a regular expression against each line of text in the file.
      Specified by:
        `isSelected` in interface `FileSelector`
      Specified by:
        `isSelected` in class `BaseExtendSelector`
      Parameters:
        `basedir` - the base directory the scan is being done from
        `filename` - is the name of the file to check
        `file` - is a java.io.File object the selector can use
      Returns:
        whether the file should be selected or not

    - #### isSelected

          public boolean isSelected(Resource r)

      Tests a regular expression against each line of text in a Resource.
      Specified by:
        `isSelected` in interface `ResourceSelector`
      Parameters:
        `r` - the Resource to check.
      Returns:
        whether the Resource is selected or not