PHPackages                             marionnewlevant/match-input - 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. marionnewlevant/match-input

ActiveCraft-plugin

marionnewlevant/match-input
===========================

Craft field type for text fields that match a regex pattern

2.0.1(7y ago)36.0k5MITPHP

Since Feb 19Pushed 2y ago1 watchersCompare

[ Source](https://github.com/marionnewlevant/craft-match_input)[ Packagist](https://packagist.org/packages/marionnewlevant/match-input)[ RSS](/packages/marionnewlevant-match-input/feed)WikiDiscussions v2 Synced 1mo ago

READMEChangelog (3)DependenciesVersions (5)Used By (0)

Match Input plugin for Craft CMS 3.x
====================================

[](#match-input-plugin-for-craft-cms-3x)

Craft field type for text fields that match a regex pattern.

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

[](#installation)

To install Match Input, follow these steps:

1. Install with Composer via `composer require marionnewlevant/match-input` from your project directory
2. Install plugin in the Craft Control Panel under Settings &gt; Plugins

or

1. Install via the Plugin Store

Match Input works on Craft 3.x.

Match Input Overview
--------------------

[](#match-input-overview)

A *Match Input* field is a *Plain Text* field with the addition of a regex pattern that the field must match to be valid.

Using Match Input
-----------------

[](#using-match-input)

When you create the field, you specify the `Input Mask`. This is the [PCRE Pattern](http://php.net/manual/en/pcre.pattern.php) which the input is required to match. You also specify an `Error Message` to display when the field does not match the pattern.

If you need to translate the `Error Message` (for a multi-language control panel), those translations will be in the `site` translation category.

Sample Input Masks
------------------

[](#sample-input-masks)

- `https://` - not a valid pattern (no delimiters)
- `/https:\/\//` - valid pattern, will match string with `https://` in it anywhere
- `#https://#` - valid pattern, will match string with `https://` in it anywhere (sometimes / isn't the best delimiter)
- `#^https://#` - will match string that begins with `https://`
- `/^\d{5}(-\d{4})?$/` - will match 5 digits, optionally followed by `-` and 4 digits (uses ^ and $ to match the entire string)

Acknowledgements
----------------

[](#acknowledgements)

Brought to you by [Marion Newlevant](http://marion.newlevant.com). Icon interior by SlideGenius from the Noun Project

###  Health Score

34

—

LowBetter than 77% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity25

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity66

Established project with proven stability

 Bus Factor1

Top contributor holds 76.5% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~178 days

Total

5

Last Release

2651d ago

Major Versions

1.0.1 → 2.0.02017-10-22

### Community

Maintainers

![](https://www.gravatar.com/avatar/1774e42ec74a4bc36a0304ace37f507af66c2e36a77bc414b508566adc3f5f56?d=identicon)[marionnewlevant](/maintainers/marionnewlevant)

---

Top Contributors

[![marionnewlevant](https://avatars.githubusercontent.com/u/695477?v=4)](https://github.com/marionnewlevant "marionnewlevant (13 commits)")[![brandonkelly](https://avatars.githubusercontent.com/u/47792?v=4)](https://github.com/brandonkelly "brandonkelly (2 commits)")[![MakeilaLundy](https://avatars.githubusercontent.com/u/19892516?v=4)](https://github.com/MakeilaLundy "MakeilaLundy (2 commits)")

---

Tags

Craftcraftcmscraft-pluginmatch input

### Embed Badge

![Health badge](/badges/marionnewlevant-match-input/health.svg)

```
[![Health](https://phpackages.com/badges/marionnewlevant-match-input/health.svg)](https://phpackages.com/packages/marionnewlevant-match-input)
```

###  Alternatives

[verbb/image-resizer

Resize assets when they are uploaded.

127269.1k7](/packages/verbb-image-resizer)[verbb/workflow

Enforce multi-step review processes for creating entries.

138120.3k1](/packages/verbb-workflow)[pennebaker/craft-architect

CraftCMS plugin to generate content models from JSON/YAML data.

72148.5k5](/packages/pennebaker-craft-architect)[supercool/buttonbox

A collection of utility field types.

8953.2k1](/packages/supercool-buttonbox)[matt-west/craft-recaptcha

Integrate Google’s reCAPTCHA into your forms.

1959.9k1](/packages/matt-west-craft-recaptcha)[hut6/oembed

A simple plugin to extract media information from websites, like youtube videos, twitter statuses or blog articles.

102.3k](/packages/hut6-oembed)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
