假设我有一个字符串:
"\System\Classes\SomeClass"
我想将其转换为:
"\system\classes\someClass"
我该怎么做 - 将每个“\X”转换为“\x”?我应该使用哪个正则表达式,我可以使用正则表达式吗?(据我所知,他们只搜索搜索模式的第一次出现)。
假设我有一个字符串:
"\System\Classes\SomeClass"
我想将其转换为:
"\system\classes\someClass"
我该怎么做 - 将每个“\X”转换为“\x”?我应该使用哪个正则表达式,我可以使用正则表达式吗?(据我所知,他们只搜索搜索模式的第一次出现)。
试试这个 -演示
$string = "\System\Classes\SomeClass";
$array  = explode("\\", $string);
for ( $i = 0, $len = sizeof($array); $i < $len; $i++ ) {
    $array[$i] = lcfirst($array[$i]);
}
$new_string  = implode("\\", $array);
    您只想将 后面的字母小写\,对吗?我建议您按照 Ajmal Salim的建议拆分字符串\,然后在每个字符串上使用。lcfirst($str)然后你可以再次内爆字符串。所以它会像:
$parts = explode('\\', '\\System\\Classes\\SomeClass');
$parts = array_map(function($item) { return lcfirst($item); }, $parts);
$end   = implode('\\', $parts);
    如果最后一句话总是上课,可能会这样
$str="\System\Classes\SomeClass";
$str2=strtolower($str);
$strArr=explode("\\",$str2);
$newStr=preg_replace('~class~','Class',$strArr[3]);
$complete=$strArr[1].'\\'.$strArr[2].'\\'. $newStr;
echo $complete;