我想转换缩写中的短语,但不希望单词的每个第一个字母组成缩写,只有大写字母。例如,我想将字符串“United States of America”转换为“USA”而不是“USOA”,因为我找到的所有代码都有效。
在我的项目中,我必须显示课程的时间表,其中一些课程名称很大,例如“Linguagem de Programação Orientada a Objeto”(面向对象的编程语言),如果我使用我在互联网上找到的代码,它会将“Linguagem de Programação Orientada a Objeto”字符串转换为 LDPOAO,而不是 LPOO,因为这是有道理的。
我找到的代码:(它将字符串转换为缩写,我想知道如何只选择大写字母放入 $result)
$string = "Progress in Veterinary Science";
$expr = '/(?<=\s|^)[a-z]/i';
preg_match_all($expr, $string, $matches);
$result = implode('', $matches[0]);
$result = strtoupper($result);
echo $result;