改变一个完全限定的字符串的顺序

问题描述 投票:1回答:1

我怎样才能改变一个完整的字符串名称呢? 我使用的是Laravel,我必须使用一个""来改变字符串名称。爆炸"? "你能帮我实现下面的情况吗?

举例说明。

Carlos Marinz Dutra

对于:

DUTRA, Carlos Marinz
php string laravel
1个回答
1
投票

使用explode转换为数组, array_pop获取数组的最后一个元素(在这个过程中进行删除), mb_strtoupper大写特殊字符, 如é ã õ á, 和 implode再次用空白处进行粘合:

$name1 = 'Carlos Marinz Dutra';
$name2 = 'Joao da Silva';

$name1 = explode(' ', $name1);
echo mb_strtoupper(array_pop($name1)).', '.implode(' ', $name1);

$name2 = explode(' ', $name2);
echo mb_strtoupper(array_pop($name2)).', '.implode(' ', $name2);

输出:

DUTRA, Carlos Marinz
SILVA, Joao da

0
投票

就用这个

$string = 'Carlos Marinz Dutra'; 
$pattern = '/(\w+) (\w+) (\w+)/i'; 
$replacement = strtoupper('$3').', $1 $2'; 
echo preg_replace($pattern, $replacement, $string);

0
投票

有很多方法可以实现。

假设你想去掉最后一串,并把它带到前面的所有大写字母后面,然后是一个 , 这里是另一种不使用数组或正则表达式函数的方法。

$str = 'Carlos Marinz Dutra';

$lw = strrpos($str, ' ') + 1;
$mod = strrpos($str, ' ');
echo strtoupper(substr($str, $lw)).', '.substr($str, 0, $mod);

输出。

DUTRA, Carlos Marinz
© www.soinside.com 2019 - 2024. All rights reserved.