【发布时间】:2018-01-17 13:56:10
【问题描述】:
我正在开发一个应用程序,它需要一个人的全名,然后对其进行处理。例如,如果用户输入这样的名称:
"AlanMichel"
那么结果一定是:
"Alan Michel"
我不知道如何在 php.ini 中做到这一点。有人可以帮忙吗?
【问题讨论】:
-
只要稍加修改,就可以使用这个答案stackoverflow.com/a/19533226/1207049
我正在开发一个应用程序,它需要一个人的全名,然后对其进行处理。例如,如果用户输入这样的名称:
"AlanMichel"
那么结果一定是:
"Alan Michel"
我不知道如何在 php.ini 中做到这一点。有人可以帮忙吗?
【问题讨论】:
你可以这样做:
$str = "AlanMichel";
$name = preg_split('/(?=[A-Z])/',$str);
echo implode( " ", $name );
这将导致:
Alan Michel
【讨论】:
试试这个
function splitAtUpperCase($s) {
return preg_split('/(?=[A-Z])/', $s, -1, PREG_SPLIT_NO_EMPTY);
}
$str = "AlanMichel";
$strArray = splitAtUpperCase($str));
echo $strArray[0]; //first name
echo $strArray[1]; //second name
输出
Alan
Michel
如果您不需要数组本身,您可以在大写字符(第一个除外)前加一个空格
echo preg_replace('/(?<!^)([A-Z])/', ' \\1', $str);
【讨论】: