如何将仅字符串的最后一个字母大写。
例如:
hello
变为:
hellO
答案 0 :(得分:14)
令人着迷但很有趣:
echo strrev(ucfirst(strrev("hello")));
作为一个功能:
function uclast($str) {
return strrev(ucfirst(strrev($str)));
}
答案 1 :(得分:3)
当$s
是您的字符串(Demo)时:
$s[$l=strlen($s)-1] = strtoupper($s[$l]);
或以函数的形式:
function uclast($s)
{
$l=strlen($s)-1;
$s[$l] = strtoupper($s[$l]);
return $s;
}
并且为了扩展需要,除了最后一个字符明显为大写字母外,所有内容都是小写的:
function uclast($s)
{
$l=strlen($s)-1;
$s = strtolower($s);
$s[$l] = strtoupper($s[$l]);
return $s;
}
答案 2 :(得分:1)
这有两个部分。首先,您需要知道如何获取字符串的一部分。为此,您需要substr()
功能。
接下来,有一个用于大写名为strtotupper()
的字符串的函数。
$thestring="Testing testing 3 2 1. aaaa";
echo substr($thestring, 0, strlen($thestring)-2) . strtoupper(substr($thestring, -1));
答案 3 :(得分:0)
这是一个算法:
1. Split the string s = xyz where x is the part of
the string before the last letter, y is the last
letter, and z is the part of the string that comes
after the last letter.
2. Compute y = Y, where Y is the upper-case equivalent
of y.
3. Emit S = xYz
答案 4 :(得分:0)
可以使用以下所有内容的小写/大写/混合字符大小写
<?php
$word = "HELLO";
//or
$word = "hello";
//or
$word = "HeLLo";
$word = strrev(ucfirst(strrev(strtolower($word))));
echo $word;
?>
所有单词的输出
hellO
答案 5 :(得分:0)
$string = 'ana-nd';
echo str_replace(substr($string, -3), strtoupper('_'.substr($string, -2)), $string);
// Output: ana_ND
$string = 'anand';
echo str_replace(substr($string, -2), strtoupper(substr($string, -2)), $string);
// Output: anaND