1. Go to this page and download the library: Download niro/hoa-regex library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
niro / hoa-regex example snippets
// 1. Read the grammar.
$grammar = new Hoa\File\Read('hoa://Library/Regex/Grammar.pp');
// 2. Load the compiler.
$compiler = Hoa\Compiler\Llk\Llk::load($grammar);
// 3. Lex, parse and produce the AST.
$ast = $compiler->parse('ab(c|d){2,4}e?');
// 4. Dump the result.
$dump = new Hoa\Compiler\Visitor\Dump();
echo $dump->visit($ast);
/**
* Will output:
* > #expression
* > > #concatenation
* > > > token(literal, a)
* > > > token(literal, b)
* > > > #quantification
* > > > > #alternation
* > > > > > token(literal, c)
* > > > > > token(literal, d)
* > > > > token(n_to_m, {2,4})
* > > > #quantification
* > > > > token(literal, e)
* > > > > token(zero_or_one, ?)
*/
$generator = new Hoa\Regex\Visitor\Isotropic(new Hoa\Math\Sampler\Random());
echo $generator->visit($ast);
/**
* Could output:
* abdcde
*/
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.