Пример #1
0
<?php

/**
 * 行頭に#があったら無視するパーサのサンプル
 */
include_once dirname(__FILE__) . '/../code/PEG.php';
$line = PEG::line();
$ignore = PEG::drop(PEG::andalso('#', $line));
$parser = PEG::join(PEG::many(PEG::choice($ignore, $line)));
$context = PEG::context('
Lorem ipsum dolor sit amet, 
#consectetur adipisicing elit, 
#sed do eiusmod tempor incididunt ut 
labore et dolore magna aliqua.
');
var_dump($parser->parse($context));
/* 結果
string(64) "
Lorem ipsum dolor sit amet, 
labore et dolore magna aliqua.
"
 */
Пример #2
0
<?php

include_once dirname(__FILE__) . '/t/t.php';
$t = new lime_test();
$c = PEG::context('a
bbb
c');
$t->is(PEG::line()->parse($c), 'a
');
$t->is(PEG::line()->parse($c), 'bbb
');
$t->is(PEG::line()->parse($c), 'c');