在具有结束索引限制的字符串中查找最后一次出现的子字符串的位置

时间:2016-05-10 05:45:25

标签: php string

我有一个像

这样的字符串
$string="abc @def @xyz $ @def @xyz";

现在我想在$。之前获得@的最后一次出现的索引。

目前我正在使用

strrpos($string,'@');

strrpos的第三个参数将是起始索引,我们可以给出结束索引吗?

2 个答案:

答案 0 :(得分:5)

使用else if (eventKind.equals (ENTRY_MODIFY)) { if (event.count() == 2) { getListener(getDirPath(key)).onChange (FileChangeType.MODIFY, file.toString ()); } /*capture first modify event*/ else if ((event.count() == 1) && (!modifySolver)) { getListener(getDirPath(key)).onChange (FileChangeType.MODIFY, file.toString ()); modifySolver = true; } /*discard the second modify event*/ else if ((event.count() == 1) && (modifySolver)) { modifySolver = false; } } 可以获得最后一次出现。有关function.strrpos

的更多信息

出于您的目的,您需要使用strrpos展开字符串,并为爆炸数组的第一个$启动strrpos的应用。

试试这个:

index

答案 1 :(得分:2)

另一种选择: -

$string="abc @def @xyz $ @def @xyz";
$pos = strrpos($string, '@', -strrpos($string, '$')); 
if($pos === false){ 
    echo 'Not Found!';
}else{
    echo $pos; // 9
}

注意: - 在$ sign之前,负号将返回最后一个'@'的索引。