-4

我有一个像“kp_o_zmq_k”这样的字符串,我需要将它转换为“kpOZmqK”,我需要将连接到下划线右侧的所有字母(在这种情况下为o,z,k)转换为大写。

4

2 回答 2

6
<?php
function underscore2Camelcase($str) {
  // Split string in words.
  $words = explode('_', strtolower($str));

  $return = '';
  foreach ($words as $word) {
    $return .= ucfirst(trim($word));
  }

  return $return;
}
?>
于 2013-03-08T04:21:52.317 回答
2

尝试在 php 中使用preg_replace_callback函数。

$ptn = "/_[a-z]?/";
$str = "kp_o_zmq_k";
$result = preg_replace_callback($ptn,"callbackhandler",$str);
// print the result
echo $result;

function callbackhandler($matches) {
    return strtoupper(ltrim($matches[0], "_"));
}
于 2013-03-08T04:34:48.683 回答