根据数组中的值拆分字符串

时间:2009-05-21 02:47:35

标签: php string

我有一组字符串,我需要将其组合成一个数组。 字符串需要分为'/',',','with'或'&'。 不幸的是,字符串可能包含需要拆分的两个字符串,因此我不能使用拆分或爆炸。

例如,一个字符串可以说'首先过去/超越&然后转',所以我试图得到一个将返回的数组 数组('先过去','超越','然后转')

我目前使用的代码是

$splittersArray=array('/', ',', ' with ','&');
    foreach($splittersArray as $splitter){
if(strpos($string, $splitter)){
    $splitString = split($splitter, $string);
    foreach($splitString as $split){

我似乎无法在PHP中找到允许我这样做的函数。 我是否需要将字符串传回漏斗的顶部,并在字符串一次又一次地拆分后继续通过'foreach'?

这看起来效率不高。 任何建议都会很棒。 谢谢, 皮特

1 个答案:

答案 0 :(得分:8)

使用正则表达式和preg_split

在你提到的情况下,你会得到分裂数组:

$splitString = preg_split('/(\/|\,| with |\&/)/', $string);