我想根据字符串的值创建一个字符串的首字母缩写词。例如,如果字符串有空格,如“Stackoverflow Community Forum”,则首字母缩写词应为“SCF”,但如果字符串中没有空格,则应取单词的前 3 个字母,如“Stackoverflow”应为“STA” . 另一部分应包括如果字符串只有 2 个字符长,则应添加随机字母数字字母,例如,如果字符串为“IT”,则应将其添加为“ITA”
这是我到目前为止所拥有的。虽然如果我把空格去掉,我会在第二个 If 时得到 SSTA。
这样做的想法是,首字母缩写词应该只有 3 个字符,并且应该在后面的示例 STA001 和下一个首字母缩写词 SFC002 等处包含递增的数字。
$s = 'Stackoverflow Community Forum';
if(preg_match_all('/\b(\w)/',strtoupper($s),$m)) {
$v = implode('',$m[1]);
echo $v;
}
if(!preg_match_all('/^\S.*\s.*\S$/',$s))
{
$v = strtoupper(substr($s,0,3));
echo $v;
}
我将不胜感激任何帮助。谢谢