如何提取给出开始和结束位置的字符串部分?
我知道有一个名为substr()的方法,但不是我正在寻找的东西(第三个参数是该部分的长度......)
答案 0 :(得分:1)
如果你有开始和结束位置,那么长度就是结束 - 开始:
$string = "The quick brown fox jumped over the lazy dog";
$start = 4;
$end = 15;
substr($string, $start, $end - $start); //=> "quick brown"
在http://www.ideone.com/LRfYT处查看此操作。
答案 1 :(得分:0)
如果您知道开始和结束位置,您只需减去以获得所需部件的长度。然后继续使用substr()
。
答案 2 :(得分:0)
以下将做你想做的事。
function ssubstr($string, $start, $end) {
if ($end < 0) $length = strlen($string) + $end;
else $length = $end - $start;
return substr($string, $start, $length);
}
此方法对于$end
的负值是安全的。
请注意,它不会执行任何错误检查