自己在看到这个问题的时候,想到的是用ascii码来处理,没往万能的正则上去想。好吧,下面来看看答案: 答案1: 代码如下 复制代码 $str = 'openapi'; $length = mb_strlen($str); $new = ''; for($i = 0; $i $length; $i++) { $num = ord($str[$i]); $pre =
自己在看到这个问题的时候,想到的是用ascii码来处理,没往万能的正则上去想。好吧,下面来看看答案:
答案1:
 代码如下 复制代码 
$str = 'openapi';
$length = mb_strlen($str);
$new = '';
for($i = 0; $i {
 $num = ord($str[$i]);
 $pre = ord($str[$i - 1]);
 $new .= ($i != 0 && ($num >= 65 && $num = 97 && $pre } www.111cn.net
echo strtolower($new) . '
';
答案2:
 代码如下 复制代码 
echo strtolower(preg_replace('/((?';
那反过来下划线分割字符串转换成驼(www.111cn.net)峰式字符串怎么搞呢
 代码如下 复制代码 
f = new file(d:/temp/t.txt)
if(f.exists()){
    f.eachline{ line->
        line = line.trim()
        string[] elems = line.split('_')
        for(int i = 0; i             elems[i] = elems[i].tolowercase()
            if(i != 0){
                string elem = elems[i]
                char first = elem[0] as char
                elems[i] =  + (char)(first - 32) + elem.substring(1)
            }
        }
        println elems.join()
    }
}
from:http://www.111cn.net/phper/php-cy/59093.htm
   
 
   