---
name: "PPI::Token::Regexp"
section: "3pm"
platform: "linux"
package: "perl-ppi"
version: "1.291-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/PPI::Token::Regexp"
---

# PPI::Token::Regexp(3pm)

Regular expression abstract base class

## NAME

PPI::Token::Regexp - Regular expression abstract base class

## INHERITANCE

```
  PPI::Token::Regexp
  isa PPI::Token
      isa PPI::Element
```

## DESCRIPTION

The `"PPI::Token::Regexp"` class is never instantiated, and simply provides a common abstract base class for the three regular expression classes. These being:

- m// - PPI::Token::Regexp::Match

  - s/// - PPI::Token::Regexp::Substitute

  - tr/// - PPI::Token::Regexp::Transliterate

  The names are hopefully obvious enough not to have to explain what each class is. See their pages for more details.

To save some confusion, it's worth pointing out here that `"qr//"` is **not** a regular expression (which PPI takes to mean something that will actually examine or modify a string), but rather a quote-like operator that acts as a constructor for compiled Regexp objects.

## METHODS

The following methods are inherited by this class' offspring:

### get\_match\_string

The `"get_match_string"` method returns the portion of the regexp that performs the match.

### get\_substitute\_string

The `"get_substitute_string"` method returns the portion of the regexp that is substituted for the match, if any.  If the regexp does not substitute, `"undef"` is returned.

### get\_modifiers

The `"get_modifiers"` method returns the modifiers of the regexp.

### get\_delimiters

The `"get_delimiters"` method returns the delimiters of the regexp as an array. The first element is the delimiters of the match string, and the second element (if any) is the delimiters of the substitute string (if any).

## SUPPORT

See the support section in the main module.

## AUTHOR

Adam Kennedy \<adamk@cpan.org\>

## COPYRIGHT

Copyright 2001 - 2011 Adam Kennedy.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

The full text of the license can be found in the LICENSE file included with this module.
