Exemplo n.º 1
0
$re = ['/foo bar/', '#foo bar#imsx', '/foo bar'];
foreach ($re as $item) {
    echo "Regex::IsRegex ( {$item} ) = " . (Regex::IsRegex($item) ? 'true' : 'false') . $eol;
}
echo $eol;
// Matches() example
$matches = [['file.txt', '*.txt'], ['file.txt', 'file.*'], ['dir/file.txt', '*.txt'], ['dir/file.txt', 'dir/*.txt'], ['dir/file.txt', '*/*.txt'], ['dir/file.txt', '*\\file.txt']];
foreach ($matches as $match) {
    echo "Regex::Matches ( {$match[0]}, {$match[1]} ) = " . (Regex::Matches($match[0], $match[1]) ? 'true' : 'false') . $eol;
}
echo $eol;
// DevelopExpression() example
$expressions = ['file[0-9].txt', 'file[a-c][0-2].bin'];
foreach ($expressions as $expression) {
    echo "Regex::DevelopExpression ( {$expression} ) = {$eol}{$tab}";
    $developed_expressions = Regex::DevelopExpression($expression);
    echo rtrim(str_replace("\n", "{$eol}{$tab}", print_r($developed_expressions, true)));
    echo "{$eol}";
}
echo $eol;
// PregMatchEx() example
$subject = "a:1 b:2";
$re = '/(?P<sequence> (?P<letter> [a-z]) : (?P<digit> [0-9])) \\s (?P<sequence> (?P<letter> [a-z]) : (?P<digit> [0-9]))/imsx';
echo "Regex::PregMatchEx ( {$subject}, {$re}, WIPE ) : ";
$result = Regex::PregMatchEx($re, $subject, $match, PREG_WIPE_MATCHES | PREG_OFFSET_CAPTURE);
echo "\t" . str_replace("\n", "{$eol}{$tab}", print_r($match, true));
echo $eol;
echo "Regex::PregMatchEx ( {$subject}, {$re}, NOWIPE ) : ";
$result = Regex::PregMatchEx($re, $subject, $match, PREG_OFFSET_CAPTURE);
echo "\t" . str_replace("\n", "{$eol}{$tab}", print_r($match, true));
echo $eol;