PHPackages                             flexic/regex-builder - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. flexic/regex-builder

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

flexic/regex-builder
====================

Provides a builder for regular expressions.

0.0.1(3y ago)06[1 PRs](https://github.com/flexicsystems/regex-builder/pulls)1GPL-3.0-or-laterPHPPHP ^8.1

Since Dec 10Pushed 3y ago2 watchersCompare

[ Source](https://github.com/flexicsystems/regex-builder)[ Packagist](https://packagist.org/packages/flexic/regex-builder)[ RSS](/packages/flexic-regex-builder/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (5)Versions (3)Used By (1)

🤘 Regex Builder
===============

[](#-regex-builder)

This package provides a builder for regular expressions.

It is designed to make using regular expressions easier and more readable for developers.

Installation
------------

[](#installation)

Run

```
composer require flexic/regex-builder
```

Usage
=====

[](#usage)

Regex-Builder allows you to build regular expressions in a fluent object-oriented way.

The following example shows how to build a regular expression.

```
$pattern = new \Flexic\RegexBuilder\Pattern();

$pattern->add(
    new \Flexic\RegexBuilder\Expr\Group([
        new \Flexic\RegexBuilder\Expr\LookAround\Ahead(
            new \Flexic\RegexBuilder\Expr\Enclosed(
                new \Flexic\RegexBuilder\Expr\Literal(''),
            ),
        ),
        new \Flexic\RegexBuilder\Expr\Enclosed(
            new \Flexic\RegexBuilder\Expr\Option([
                new \Flexic\RegexBuilder\Expr\Marker\AnyWord(),
                new \Flexic\RegexBuilder\Expr\Marker\AnyNonWord(),
            ]),
        ),
        new \Flexic\RegexBuilder\Expr\LookAround\Follow(
            new \Flexic\RegexBuilder\Expr\Literal(''),
        ),
    ]),
);
```

Patterns build with Regex-Builder can be converted to a string representation of a regular expression.

```
$pattern->toString(); // returns: '(?=(\))(\w|\W)(?
