From: Philip Tzou Date: Thu, 5 Mar 2009 02:44:58 +0000 (+0000) Subject: varsep split pattern improve for unidirectional conversion. (LanguageConverter.php) X-Git-Tag: 1.31.0-rc.0~42607 X-Git-Url: http://git.cyclocoop.org/data/Fool?a=commitdiff_plain;h=3e4278aafe3920ebcd672950fbd92dbede591355;p=lhc%2Fweb%2Fwiklou.git varsep split pattern improve for unidirectional conversion. (LanguageConverter.php) --- diff --git a/languages/LanguageConverter.php b/languages/LanguageConverter.php index 10105fe202..3be46f9043 100644 --- a/languages/LanguageConverter.php +++ b/languages/LanguageConverter.php @@ -1013,11 +1013,15 @@ class ConverterRule { // [2] => '' // ) $varsep_pattern = '/' . $markup['varsep'] . '\s*' . '(?='; - foreach( $variants as $variant ) - $varsep_pattern .= $variant . '\s*' . $markup['codesep'] . '|'; + foreach( $variants as $variant ) { + $varsep_pattern .= $variant . '\s*' . $markup['codesep'] . '|'; // zh-hans:xxx;zh-hant:yyy + $varsep_pattern .= '[^;]*?' . $markup['unidsep'] . '\s*' . $variant + . '\s*' . $markup['codesep'] . '|'; // xxx=>zh-hans:yyy; xxx=>zh-hant:zzz + } $varsep_pattern .= '\s*$)/'; $choice = preg_split($varsep_pattern, $rules); + foreach( $choice as $c ) { $v = explode($markup['codesep'], $c, 2); if( count($v) != 2 )