The RegexIterator class

- « RecursiveTreeIterator::valid

- RegexIterator::accept »

- PHP Manual
- Iterators
- The RegexIterator class

# The RegexIterator class

(PHP 5 >= 5.2.0, PHP 7, PHP 8)

## Introduction

This iterator can be used to filter another iterator based on a regular expression.

## Class synopsis

class RegexIterator extends FilterIterator {
/* Constants */
public const int USE_KEY;
public const int INVERT_MATCH;
public const int MATCH;
public const int GET_MATCH;
public const int ALL_MATCHES;
public const int SPLIT;
public const int REPLACE;
/* Properties */
public ?string $replacement = null;
/* Methods */
public __construct(
Iterator `$iterator`,
string `$pattern`,
int `$mode` = RegexIterator::MATCH,
int `$flags` = 0,
int `$pregFlags` = 0
)
public accept(): bool
public getFlags(): int
public getMode(): int
public getPregFlags(): int
public getRegex(): string
public setFlags(int `$flags`): void
public setMode(int `$mode`): void
public setPregFlags(int `$pregFlags`): void
/* Inherited methods */
public FilterIterator::accept(): bool
public FilterIterator::current(): mixed
public FilterIterator::key(): mixed
public FilterIterator::next(): void
public FilterIterator::rewind(): void
public FilterIterator::valid(): bool
public IteratorIterator::current(): mixed
public IteratorIterator::getInnerIterator(): ?Iterator
public IteratorIterator::key(): mixed
public IteratorIterator::next(): void
public IteratorIterator::rewind(): void
public IteratorIterator::valid(): bool
}

## Predefined Constants

## RegexIterator operation modes

`RegexIterator::ALL_MATCHES`

  Return all matches for the current entry (see preg_match_all()).

`RegexIterator::GET_MATCH`

  Return the first match for the current entry (see preg_match()).

`RegexIterator::MATCH`

  Only execute match (filter) for the current entry (see preg_match()).

`RegexIterator::REPLACE`

  Replace the current entry (see preg_replace(); Not fully implemented yet)

`RegexIterator::SPLIT`

  Returns the split values for the current entry (see preg_split()).

## RegexIterator Flags

`RegexIterator::USE_KEY`

  Special flag: Match the entry key instead of the entry value.

`RegexIterator::INVERT_MATCH`

  Inverts the return value of RegexIterator::accept().

## Properties

replacement

## Table of Contents

- RegexIterator::accept — Get accept status
- RegexIterator::__construct — Create a new RegexIterator
- RegexIterator::getFlags — Get flags
- RegexIterator::getMode — Returns operation mode
- RegexIterator::getPregFlags — Returns the regular expression flags
- RegexIterator::getRegex — Returns current regular expression
- RegexIterator::setFlags — Sets the flags
- RegexIterator::setMode — Sets the operation mode
- RegexIterator::setPregFlags — Sets the regular expression flags