makarms/text-probe

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

Installs: 2

Dependents: 0

Suggesters: 0

Security: 0

Stars: 11

Watchers: 0

Forks: 3

Open Issues: 2

pkg:composer/makarms/text-probe

v5.0.1 2026-01-24 13:05 UTC

README

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()
    );
}

Expected output

[EMAIL] info@example.com (position 21-37)