现在,我正在做:
$lastpart = strrchr( $string, '-');
$firstpart = str_replace($lastpart, '', $string);
或
$array = explode('-',$string);
array_pop($array);
$firstpart = implode('-',$array);
但似乎必须有一个本机功能同时完成所有这些。是否有一个函数可以找到字符串的最后一次出现并返回它之前的所有内容?
只是为了澄清,这些解决方案运行正常,但我正在寻找原生功能。
答案 0 :(得分:1)
您可以使用http://www.php.net/manual/en/function.strrpos.php
$newString = substr($oldString, 0, strrpos($oldString, $character));
答案 1 :(得分:1)
您可以使用正则表达式:
将a
视为您要查找的字符串:
$string = preg_replace('/(.*)a([^a])*$/', '\\1', 'asdfabcd');
此处的$ string将导致asdf