PHP修剪并仅保留第一部分和最后一部分

PHP修剪并仅保留第一部分和最后一部分,php,Php,我在PHP中有如下变量 steve_s_baue marine_camp_se_bell mike_wane 我只想保留第一部分和最后一部分: steve_baue marine_bell mike_wane 我试图使用trim但被卡住了 编辑:以下是我尝试的内容 $row = $pre_results[$i]; $name = $row -> name; $text = preg_replace('~[^\pL\d]+~u', '_', $name); $text = ico

我在PHP中有如下变量

steve_s_baue
marine_camp_se_bell
mike_wane
我只想保留第一部分和最后一部分:

steve_baue
marine_bell
mike_wane
我试图使用
trim
但被卡住了

编辑:以下是我尝试的内容

$row = $pre_results[$i];    
$name = $row -> name;
$text = preg_replace('~[^\pL\d]+~u', '_', $name);
$text = iconv('utf-8', 'us-ascii//TRANSLIT', $text);
$text = preg_replace('~[^-\w]+~', '', $text);
$text = trim($text, '_');
$text = preg_replace('~-+~', '_', $text);
$text = strtolower($text);              
有什么建议吗?

您可以查看以下内容: 及



如果将原始字符串放入数组中,则可以运行array_walk();使用这个函数

使用explode函数进行操作,我制作了一个基本示例

 <?php 

$name = "marine_camp_se_bell";
$var = explode("_",$name);
print_r (explode("_",$name));
//than print as array
echo "</br>";
echo $var[0];
echo "</br>";
echo $var[3];
?>


*未经测试,但应至少完成这项工作

,您应尝试自己编写代码。之后,如果你有问题,你可以张贴你已经尝试了一个明确的解释什么是不工作,并提供一个解决方案。我建议你读一个好的问题和答案。另外,一定要记住。使用正则表达式并保留第一个和最后一个单词?或者在下划线上爆炸,并用下划线内爆第一个和最后一个元素。你不是半小时前才问这个问题吗?谁投了赞成票?他们没有表现出任何努力来自己写这篇文章。@johncode我开始替换非字母、音译、删除不需要的字符、修剪和删除重复和小写。但是在移除第一个和最后一个之间的任何东西时有点困难。并非总是,arrayI的第三个键只是给出了一个示例,而不是一个完美的代码来复制和粘贴到他的项目中。我明白了。看来这是唯一可行的方法!谢谢
function firstlast($var,$seperator) {
     $varr = explode($seperator, $var);
     $first = current($varr);
     $last = end($varr);
     return $first.'_'.$last;
}
$seperator='_';
$old = 'marine_camp_se_bell';
$new = firstlast($old, $seperator);
echo $new;
 <?php 

$name = "marine_camp_se_bell";
$var = explode("_",$name);
print_r (explode("_",$name));
//than print as array
echo "</br>";
echo $var[0];
echo "</br>";
echo $var[3];
?>
$name = "john_dont_do_some_doe";
$array = explode("_", $name);
$last = count($array) - 1;
echo $array[0]."_". $array[$last];  //shows: john_doe