Package org.apache.lucene.queryparser.flexible.standard.nodes

# Class RegexpQueryNode

java.lang.Object
org.apache.lucene.queryparser.flexible.core.nodes.QueryNodeImpl
org.apache.lucene.queryparser.flexible.standard.nodes.RegexpQueryNode

All Implemented Interfaces:
  `Cloneable`, `FieldableNode`, `QueryNode`, `TextableQueryNode`

public class RegexpQueryNode extends QueryNodeImpl implements TextableQueryNode, FieldableNode
A `RegexpQueryNode` represents `RegexpQuery` query Examples: /[a-z]|[0-9]/

## Field Summary

### Fields inherited from class org.apache.lucene.queryparser.flexible.core.nodes.QueryNodeImpl

`PLAINTEXT_FIELD_NAME, toQueryStringIgnoreFields`

## Constructor Summary

Constructors
Constructor
Description
`RegexpQueryNode(CharSequence field, CharSequence text)`
`RegexpQueryNode(CharSequence field, CharSequence text, int begin, int end)`

## Method Summary

Modifier and Type
Method
Description
`RegexpQueryNode`
`cloneTree()`
Recursive clone the QueryNode tree The tags are not copied to the new tree when you call the cloneTree() method
`CharSequence`
`getField()`
Returns the field associated to the node and every node under it.
`String`
`getFieldAsString()`
`CharSequence`
`getText()`
`void`
`setField(CharSequence field)`
Associates the node to a field.
`void`
`setText(CharSequence text)`
`BytesRef`
`textToBytesRef()`
`CharSequence`
`toQueryString(EscapeQuerySyntax escapeSyntaxParser)`
convert to a query string understood by the query parser
`String`
`toString()`
Every implementation of this class should return pseudo xml like this:

### Methods inherited from class org.apache.lucene.queryparser.flexible.core.nodes.QueryNodeImpl

`add, add, allocate, clone, containsTag, getChildren, getParent, getTag, getTagMap, isDefaultField, isLeaf, isRoot, removeChildren, removeFromParent, set, setLeaf, setTag, unsetTag`

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

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

### Methods inherited from interface org.apache.lucene.queryparser.flexible.core.nodes.QueryNode

`add, add, containsTag, getChildren, getParent, getTag, getTagMap, isLeaf, removeChildren, removeFromParent, set, setTag, unsetTag`

## Constructor Details

### RegexpQueryNode

public RegexpQueryNode(CharSequence field, CharSequence text, int begin, int end)

Parameters:
  `field` - - field name
  `text` - - value that contains a regular expression
  `begin` - - position in the query string
  `end` - - position in the query string

### RegexpQueryNode

public RegexpQueryNode(CharSequence field, CharSequence text)

Parameters:
  `field` - - field name
  `text` - - value that contains a regular expression

## Method Details

### textToBytesRef

public BytesRef textToBytesRef()

### toString

public String toString()
Description copied from class: `QueryNodeImpl`
Every implementation of this class should return pseudo xml like this:

For FieldQueryNode: <field start='1' end='2' field='subject' text='foo'/>

Specified by:
  `toString` in interface `QueryNode`
Overrides:
  `toString` in class `QueryNodeImpl`
See Also:
  - `QueryNode.toString()`

### cloneTree

public RegexpQueryNode cloneTree() throws CloneNotSupportedException
Description copied from interface: `QueryNode`
Recursive clone the QueryNode tree The tags are not copied to the new tree when you call the cloneTree() method

Specified by:
  `cloneTree` in interface `QueryNode`
Overrides:
  `cloneTree` in class `QueryNodeImpl`
Returns:
  the cloned tree
Throws:
  `CloneNotSupportedException`

### getText

public CharSequence getText()

Specified by:
  `getText` in interface `TextableQueryNode`

### setText

public void setText(CharSequence text)

Specified by:
  `setText` in interface `TextableQueryNode`

### getField

public CharSequence getField()
Description copied from interface: `FieldableNode`
Returns the field associated to the node and every node under it.

Specified by:
  `getField` in interface `FieldableNode`
Returns:
  the field name

### getFieldAsString

public String getFieldAsString()

### setField

public void setField(CharSequence field)
Description copied from interface: `FieldableNode`
Associates the node to a field.

Specified by:
  `setField` in interface `FieldableNode`
Parameters:
  `field` - the field name

### toQueryString

public CharSequence toQueryString(EscapeQuerySyntax escapeSyntaxParser)
Description copied from interface: `QueryNode`
convert to a query string understood by the query parser

Specified by:
  `toQueryString` in interface `QueryNode`