📂 FileMgr
📍
/home/u414903541/domains/finrush.in/public_html/vendor/vlucas/phpdotenv/src/Util
✏️ Edit File: /home/u414903541/domains/finrush.in/public_html/vendor/vlucas/phpdotenv/src/Util/Regex.php
⬅ Kembali
<?php declare(strict_types=1); namespace Dotenv\Util; use GrahamCampbell\ResultType\Error; use GrahamCampbell\ResultType\Success; /** * @internal */ final class Regex { /** * This class is a singleton. * * @codeCoverageIgnore * * @return void */ private function __construct() { // } /** * Perform a preg match, wrapping up the result. * * @param string $pattern * @param string $subject * * @return \GrahamCampbell\ResultType\Result<bool, string> */ public static function matches(string $pattern, string $subject) { return self::pregAndWrap(static function (string $subject) use ($pattern) { return @\preg_match($pattern, $subject) === 1; }, $subject); } /** * Perform a preg match all, wrapping up the result. * * @param string $pattern * @param string $subject * * @return \GrahamCampbell\ResultType\Result<int, string> */ public static function occurrences(string $pattern, string $subject) { return self::pregAndWrap(static function (string $subject) use ($pattern) { return (int) @\preg_match_all($pattern, $subject); }, $subject); } /** * Perform a preg replace callback, wrapping up the result. * * @param string $pattern * @param callable(string[]): string $callback * @param string $subject * @param int|null $limit * * @return \GrahamCampbell\ResultType\Result<string, string> */ public static function replaceCallback(string $pattern, callable $callback, string $subject, ?int $limit = null) { return self::pregAndWrap(static function (string $subject) use ($pattern, $callback, $limit) { return (string) @\preg_replace_callback($pattern, $callback, $subject, $limit ?? -1); }, $subject); } /** * Perform a preg split, wrapping up the result. * * @param string $pattern * @param string $subject * * @return \GrahamCampbell\ResultType\Result<string[], string> */ public static function split(string $pattern, string $subject) { return self::pregAndWrap(static function (string $subject) use ($pattern) { /** @var string[] */ return (array) @\preg_split($pattern, $subject); }, $subject); } /** * Perform a preg operation, wrapping up the result. * * @template V * * @param callable(string): V $operation * @param string $subject * * @return \GrahamCampbell\ResultType\Result<V, string> */ private static function pregAndWrap(callable $operation, string $subject) { $result = $operation($subject); if (\preg_last_error() !== \PREG_NO_ERROR) { /** @var \GrahamCampbell\ResultType\Result<V,string> */ return Error::create(\preg_last_error_msg()); } /** @var \GrahamCampbell\ResultType\Result<V,string> */ return Success::create($result); } }
💾 Simpan File
Batal
⬅ Naik ke src
2 item
Nama
Tipe
Ukuran
Diubah
Aksi
🐘
Regex.php
php
3.1 KB
2025-10-25 15:30
✏️ Edit
👁️ View
🗑 Hapus
🐘
Str.php
php
2.7 KB
2025-10-25 15:30
✏️ Edit
👁️ View
🗑 Hapus