Package org.apache.tools.ant.types

# Class RegularExpression

java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.types.DataType
org.apache.tools.ant.types.RegularExpression

All Implemented Interfaces:
  `Cloneable`

public class RegularExpression extends DataType
A regular expression datatype. Keeps an instance of the compiled expression for speed purposes. This compiled expression is lazily evaluated (it is compiled the first time it is needed). The syntax is the dependent on which regular expression type you are using. The system property "ant.regexp.regexpimpl" will be the classname of the implementation that will be used.

     Available implementations:

       org.apache.tools.ant.util.regexp.Jdk14RegexpRegexp (default)
            Based on the JDK's built-in regular expression package

       org.apache.tools.ant.util.regexp.JakartaOroRegexp
            Based on the jakarta-oro package

       org.apache.tools.ant.util.regexp.JakartaRegexpRegexp
            Based on the jakarta-regexp package

       <regexp [ [id="id"] pattern="expression" | refid="id" ]
       />

See Also:
  - `Perl5Compiler`
  - `RE`
  - `Pattern`
  - `Regexp`

## Field Summary

Fields
Modifier and Type
Field
Description
`static final String`
`DATA_TYPE_NAME`
Name of this data type

### 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
Description
`RegularExpression()`

## Method Summary

Modifier and Type
Method
Description
`String`
`getPattern(Project p)`
Gets the pattern string for this RegularExpression in the given project.
`RegularExpression`
`getRef(Project p)`
Get the RegularExpression this reference refers to in the given project.
`Regexp`
`getRegexp(Project p)`
provides a reference to the Regexp contained in this
`void`
`setPattern(String pattern)`
sets the regular expression pattern

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

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

### 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 Details

### DATA_TYPE_NAME

public static final String DATA_TYPE_NAME
Name of this data type

See Also:
  - Constant Field Values

## Constructor Details

### RegularExpression

public RegularExpression()

## Method Details

### setPattern

public void setPattern(String pattern)
sets the regular expression pattern

Parameters:
  `pattern` - regular expression pattern

### getPattern

public String getPattern(Project p)
Gets the pattern string for this RegularExpression in the given project.

Parameters:
  `p` - project
Returns:
  pattern

### getRegexp

public Regexp getRegexp(Project p)
provides a reference to the Regexp contained in this

Parameters:
  `p` - project
Returns:
  Regexp instance associated with this RegularExpression instance

### getRef

public RegularExpression getRef(Project p)
Get the RegularExpression this reference refers to in the given project. Check for circular references too

Parameters:
  `p` - project
Returns:
  resolved RegularExpression instance