【问题标题】:Separate string in php by upper case letters用大写字母分隔php中的字符串
【发布时间】:2018-01-17 13:56:10
【问题描述】:

我正在开发一个应用程序,它需要一个人的全名,然后对其进行处理。例如,如果用户输入这样的名称:

"AlanMichel"

那么结果一定是:

"Alan Michel"

我不知道如何在 php.ini 中做到这一点。有人可以帮忙吗?

【问题讨论】:

标签: php regex html


【解决方案1】:

你可以这样做:

$str = "AlanMichel";
$name = preg_split('/(?=[A-Z])/',$str);

echo implode( " ", $name );

这将导致:

Alan Michel 

【讨论】:

    【解决方案2】:

    试试这个

    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); 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-11
      • 2011-10-18
      • 2019-11-22
      • 2019-08-08
      • 2017-01-28
      • 2011-05-28
      • 1970-01-01
      • 2021-01-06
      相关资源
      最近更新 更多