Skip to content

Repository files navigation

TextProbe

PHP Version Require Latest Stable Version PHP Tests codecov License

TextProbe is a simple and extensible PHP library for text analysis and pattern matching. Designed to help developers probe, parse, and manipulate text efficiently using customizable rules and matchers.

Features

  • 🧠 Easy-to-use API for text matching and parsing
  • 🔧 Extensible architecture — write your own matchers and rules
  • 💡 Suitable for parsing logs, user input, or any structured text

Installation

You can install the library via Composer:

composer require makarms/text-probe

Available Probes

TextProbe includes a wide range of built-in probes. Probes are fully extensible and support custom validation via the IProbe and IValidator interfaces. See the Probe Index for the full categorized list.

Usage

require __DIR__ . '/vendor/autoload.php';

use TextProbe\TextProbe;
use TextProbe\Probes\Contact\EmailProbe;

$text = "Please contact us at info@example.com for more details.";

$probe = new TextProbe();
$probe->addProbe(new EmailProbe());

$results = $probe->analyze($text);

foreach ($results as $result) {
    echo sprintf(
        "[%s] %s (position %d-%d)\n",
        $result->getProbeType()->name,
        $result->getResult(),
        $result->getStart(),
        $result->getEnd()
    );
}

echo $probe->replace($text, '*email*');

Expected output

[EMAIL] info@example.com (position 21-37)
Please contact us at *email* for more details.

About

Simple and extensible PHP library for text analysis and pattern matching, designed to help developers probe, parse, and manipulate text efficiently.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

12 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages