En vous promenant sur Beamreactor, nous stockons votre IP 48h pour des raisons de sécurité.

Lecteur Markdown

regex Documentation › REGEX_DOCUMENTATION

Regex Documentation

Regex — Regular Expression Tester #

Description #

Outil de test d'expressions régulières intégré à BeamReactor. Permet de tester des patterns PCRE avec match, groupes de capture et remplacement, directement depuis l'interface d'administration.

Fonctionnalités #

Test de patterns #

  • Saisie du pattern avec délimiteurs PCRE (/pattern/flags)
  • Texte de test multi-lignes (textarea, max 65535 caractères)
  • Chaîne de remplacement optionnelle
  • Exemple pré-rempli au premier chargement

Résultats #

  • Nombre de correspondances (preg_match_all)
  • Liste des valeurs matchées
  • Détail des groupes de capture ($1, $2, ...)
  • Résultat du remplacement si une chaîne de remplacement est fournie
  • Messages d'erreur explicites pour les patterns invalides

Aide-mémoire #

Section de référence rapide affichée sous le formulaire avec les tokens PCRE courants (., \d, \w, \s, ^, $, *, +, ?, {n,m}, [abc], (...), |, \b). Entièrement traduite.

Sécurité #

  • Accès restreint à REGEX_LEVEL_ADMIN (admin uniquement)
  • Le modificateur /e est explicitement interdit — il permettait l'exécution de code arbitraire via preg_replace (supprimé en PHP 7, mais le plugin bloque la tentative par précaution)
  • Toutes les entrées sanitizées via Parser::sanitize
  • Validation du pattern via set_error_handler avant exécution — les erreurs PCRE sont interceptées proprement
  • Sortie HTML échappée via htmlspecialchars
  • Pas d'utilisation de get_magic_quotes_gpc() (supprimé en PHP 8)

Pourquoi admin uniquement ? #

Un testeur regex est un outil de développement. Exposer preg_replace à des utilisateurs non privilégiés, même avec les protections en place, n'a pas de sens fonctionnel.

Structure #

text
/plugins/regex/
├── regex.php
├── /conf/
│   └── regex.conf.inc.php
├── /doc/
│   └── regex.md
├── /locale/
│   ├── regex.en.inc.php
│   ├── regex.fr.inc.php
│   └── regex.de.inc.php
└── /css/
    └── regex.css

Traductions #

34 clés dans $dialregex[]. Disponible en EN, FR, DE. Inclut les labels du formulaire, les messages d'erreur, et les descriptions de l'aide-mémoire.

Note : l'ancien plugin utilisait $dialregx[] (sans 'e'). Renommé en $dialregex[] pour cohérence.

Différences avec la version 1.x #

| Aspect | v1 (2009) | v2 (2026) |

|--------|-----------|-----------|

| PHP | get_magic_quotes_gpc() | Parser::sanitize |

| Sécurité | Aucune validation du pattern | Rejet du /e, error handler, sanitization |

| Résultats | Texte brut, résultat seul | Matches, groupes de capture, remplacement |

| Formulaire | HTML inline concaténé | Formulaire structuré avec CSS |

| Aide | Aucune | Aide-mémoire PCRE traduit |

| Texte de test | Input text (ligne unique) | Textarea multi-lignes |

| Accès | REGEX_LEVEL_USER | REGEX_LEVEL_ADMIN |

| i18n | EN/FR , $dialregx | EN/FR/DE, $dialregex |

Changelog #

  • 2.0.0 (2026-02-07) : Réécriture complète. Suppression de get_magic_quotes_gpc, sanitization via Parser, blocage du modificateur /e, affichage des groupes de capture, aide-mémoire PCRE, textarea multi-lignes, CSS séparé, i18n EN/FR/DE.
  • 1.02.0 (2009-10-29) : Version originale.
de en fr