如何在PHP中检索最后一个单词或字符

时间:2012-03-19 23:28:52

标签: php

示例字符串

$string = 'how-do-i-retrieve-last-word'
$string = 'how-do-i-retrieve-last-word-2'
$string = 'how-do-i retrieve-last word-123'
$string = 'how do i retrieve last word test'

我想在上面的字符串中检索最后一个单词,结果应为:

word
2
123
test

4 个答案:

答案 0 :(得分:6)

您可以将此正则表达式与preg_match:

一起使用
/\b(\w+)$/

<强>代码:

if (preg_match('/\b(\w+)$/', $str, $m))
   var_dump($m[1]); // will print your last word

答案 1 :(得分:1)

$stringAfterHyphen = substr($string, -1, strpos($string, '-'));

让我解释一下。 substr函数接受你的字符串,从最后一个字符开始并一直向左,直到它到达连字符。

答案 2 :(得分:1)

preg_match_all('/\w+/', $string, $res);

$res数组将包含字符串中的所有单词,因此您可以轻松选择最后一个单词。

答案 3 :(得分:1)

function lastWord($string) {
    $pos = max(strripos($string, ' '), strripos($string, '-')) + 1;
    return substr($string, -(strlen($string) - $pos));
}

var_dump(lastWord('how-do-i-retrieve-last-word'));
var_dump(lastWord('how-do-i-retrieve-last-word-2'));
var_dump(lastWord('how-do-i retrieve-last word-123'));
var_dump(lastWord('how do i retrieve last word test'));

给你:

string 'word' (length=4)
string '2' (length=1)
string '123' (length=3)
string 'test' (length=4)
相关问题