我有一个字符串变量,我想得到它的每个单词的第一个字母.我希望最终结果是首字母数组.
$language = 'Sample Language';
preg_match('/(\b[a-z])+/i', $language, $match);
print_r($match);
Run Code Online (Sandbox Code Playgroud)
我得到的只是第一个单词的第一个字母.以上打印数组([0] => S [1] => S)
如果我改成它
preg_match('/(\bL)+/i', $language, $match);
Run Code Online (Sandbox Code Playgroud)
我可以得到第二个字的L匹配.很明显,在第一场比赛之后,它停止寻找剩下的比赛.我对正则表达式不是很了解.谁能指出我做错了什么?
输入字符串中的单词并不总是用空格分隔.这是非常不可预测的.我遇到的一些格式:"MainLanguage:Language""MainLanguage,Language""MainLanguage:Language-SubLanguage"在这里我想得到M,L和S