分我有它把文件夹名称的字符串,看起来有点像这样,world:region:bash
删除字符串的最后一部分用冒号
,这样我就可以创建FTP功能的路径。
不过,我需要在某个点能够删除字符串的最后一部分,因此,例如
我有这个world:region:bash
我需要得到这个world:region
的脚本无法知道文件夹名称是什么,所以一些它需要能够在最后一个冒号后删除字符串。
分我有它把文件夹名称的字符串,看起来有点像这样,world:region:bash
删除字符串的最后一部分用冒号
,这样我就可以创建FTP功能的路径。
不过,我需要在某个点能够删除字符串的最后一部分,因此,例如
我有这个world:region:bash
我需要得到这个world:region
的脚本无法知道文件夹名称是什么,所以一些它需要能够在最后一个冒号后删除字符串。
$res=substr($input,0,strrpos($input,':'));
我也许应该强调的是strrpos不strpos发现在给定的字符串
这只会返回字符串到第一个冒号 –
http://php.net/manual/en/function.strrpos.php :) – Martin
我的不好,'strrpos'看起来像'strpos' –
一个字符串中最后一次出现爆炸的字符串,删除最后一个元素。 如果您再次需要该字符串,请使用implode。
$items = array_pop(explode(':', $the_path));
$shotpath = implode(':', $items);
好主意,但是,数组可能会很长,是否有像array_length之类的函数? –
count给出数组长度。但是,您不需要它删除最后一个项目。 – JvdBerg
$tokens = explode(':', $string); // split string on :
array_pop($tokens); // get rid of last element
$newString = implode(':', $tokens); // wrap back
使用它,它给了我ArrayArray:地区 –
@HarryBeasant肯定? [Check this](http://codepad.org/ovqxkB6C) – moonwave99
你可以用'$ tokens = explode(':',$ string,-1)替换前两行;' – salathe
你可能想尝试这样的:如果您创建使用此信息的功能
<?php
$variable = "world:region:bash";
$colpos = strrpos($variable, ":");
$result = substr($variable, 0, $colpos);
echo $result;
?>
或者......,你会得到这样的:
<?php
function StrRemoveLastPart($string, $delimiter)
{
$lastdelpos = strrpos($string, $delimiter);
$result = substr($string, 0, $lastdelpos);
return $result;
}
$variable = "world:region:bash";
$result = StrRemoveLastPart($variable, ":");
?>
使用正则表达式/:[^:]+$/
,preg_replace
$s = "world:region:bash";
$p = "/:[^:]+$/";
$r = '';
echo preg_replace($p, $r, $s);
注意如何$
这意味着字符串结束,由使用的。
<?php
$string = 'world:region:bash';
$string = implode(':', explode(':', $string, -1));
'<?php str_replace(':bash',''); ?> –
[爆炸](http://php.net/manual/en/function.explode.php)? –
@RPM“脚本无法知道文件夹名称是什么,所以有些如何才能在最后一个冒号后删除字符串。” –