php preg_split 语言

php preg_split for languages

我有这样的字符串:

de:Deutsch-en:English-es:Español-fr:Français-ru:Pусский-jp:日本語

如何使用 preg_split 获得这样的结果:

de en es fr ru jp

我试过这个:

$result = preg_split("/(:(.*)\-)/", "de:Deutsch-en:English-es:Español-fr:Français-ru:Pусский-jp:日本語");
print_r($result);

结果确实来自第一场和最后一场比赛:

Array ( [0] => de [1] => jp:日本語 )

正则表达式

:.*?(-|$)

应该可以;尝试类似的东西:

"/:.*?(-|$)/"

然后:

preg_split("/:.+?(-|$)/", "de:Deutsch-en:English-es:Español-fr:Français-ru:Pусский-jp:日本語",-1,PREG_SPLIT_NO_EMPTY);