<?php ini_set("intl.error_level", E_WARNING); ini_set("intl.default_locale", "pt_PT"); $rules = <<<RULES \$LN = [[:letter:] [:number:]]; \$S = [.;,:]; !!forward; \$LN+ {1}; \$S+ {42}; !!reverse; \$LN+ {1}; \$S+ {42}; !!safe_forward; !!safe_reverse; RULES; $rbbi = new IntlRuleBasedBreakIterator($rules); $rbbi->setText('sdfkjsdf88á.... ,;'); $br = $rbbi->getBinaryRules(); $rbbi2 = new IntlRuleBasedBreakIterator($br, true); var_dump($rbbi->getRules(), $rbbi2->getRules()); var_dump($rbbi->getRules() == $rbbi2->getRules()); ?> ==DONE==
<?php ini_set("intl.error_level", E_WARNING); $bi = new IntlRuleBasedBreakIterator('[\\p{Letter}]+;'); var_dump($bi->getText(array()));
<?php ini_set("intl.error_level", E_WARNING); ini_set("intl.default_locale", "pt_PT"); $rules = <<<RULES \$LN = [[:letter:] [:number:]]; \$S = [.;,:]; !!forward; \$LN+ {1}; [^.]+ {4}; \$S+ {42}; !!reverse; \$LN+ {1}; [^.]+ {4}; \$S+ {42}; !!safe_forward; !!safe_reverse; RULES; $rbbi = new IntlRuleBasedBreakIterator($rules); $rbbi->setText('sdfkjsdf88á.... ,;'); do { var_dump($rbbi->current(), $rbbi->getRuleStatusVec()); } while ($rbbi->next() != IntlBreakIterator::DONE); ?> ==DONE==
<?php ini_set("intl.error_level", E_WARNING); $bi = new IntlRuleBasedBreakIterator('[\\p{Letter}]+;'); var_dump($bi->setText()); var_dump($bi->setText(array())); var_dump($bi->setText(1, 2)); class A { function __destruct() { var_dump('destructed'); throw new Exception('e'); } function __tostring() { return 'foo'; } } try { var_dump($bi->setText(new A())); } catch (Exception $e) { var_dump($e->getMessage()); }
<?php ini_set("intl.error_level", E_WARNING); ini_set("intl.default_locale", "pt_PT"); $rules = <<<RULES \$LN = [[:letter:] [:number:]]; \$S = [.;,:]; !!forward; \$LN+ {1}; \$S+ {42}; !!reverse; \$LN+ {1}; \$S+ {42}; !!safe_forward; !!safe_reverse; RULES; $rbbi = new IntlRuleBasedBreakIterator($rules); var_dump($rbbi->getRules()); ?> ==DONE==
<?php ini_set("intl.error_level", E_WARNING); ini_set("intl.default_locale", "pt_PT"); $rules = <<<RULES \$LN = [[:letter:] [:number:]]; \$S = [.;,:]; !!forward; \$LN+ {1}; \$S+ {42}; !!reverse; \$LN+ {1}; \$S+ {42}; !!safe_forward; !!safe_reverse; RULES; $rbbi = new IntlRuleBasedBreakIterator($rules); $rbbi->setText('sdfkjsdf88á.... ,;'); do { echo "pos : {$rbbi->current()}\n", "rule status: {$rbbi->getRuleStatus()}\n"; } while ($rbbi->next() != IntlBreakIterator::DONE); ?> ==DONE==