从字符串中删除第一个和最后一个字符

43

我有这个:

$dataList = "*one*two*three*";
$list = explode("*", $dataList);
echo"<pre>";print_r($list);echo"</pre>";

它的输出是:

> Array (
>     [0] => 
>     [1] => one
>     [2] => two
>     [3] => three
>     [4] =>  )

在执行字符串分割之前,如何去除字符串中的第一个和最后一个星号?

5个回答

63

使用trim函数:

trim($dataList, '*');

这将从字符串的开头和结尾移除所有*字符(即使有多个字符!)。


撒拉斯Java己完成! - Yagnesh bhalala

57

其他可能的方法:

使用 substr 函数:

$dataList = substr($dataList, 1, -1);

您也可以选择不从字符串中删除*,而是删除空数组值,这些值始终是第一个和最后一个元素。 使用数组函数array_pop()和array_shift():

$arrData = array_pop(array_shift($arrData));

1
第二部分是不正确的,会导致错误。array_poparray_shift会修改数组本身(两者的返回值都是它们删除的元素),所以你只需要执行array_shift($arrData); array_pop($arrData);即可。 - Headbank

18

$string = substr($dataList, 1, -1);

在 PHP 中删除字符串的第一个和最后一个字符。


7
trim($dataList, "*")

2
echo trim($dataList,"*");

希望这能解决你的问题。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接