Php去掉下划线并大写,php – pre_replace一个字符串,用于大写下划线后面的每个单词...

单独的正则表达式在这里不起作用.但是,您可以使用

preg_replace_callback:

$val = 'hello_world_again';

function match_toupper($m) {

return strtoupper($m[1]);

}

$val = preg_replace_callback('/(?:^|_)([a-z])/', 'match_toupper', $val);

echo $val; // HelloWorldAgain

在PHP 5.3或更高版本中,也可以使用anonymous function:

$val = 'hello_world_again';

$val = preg_replace_callback('/(?:^|_)([a-z])/',

function ($m) {

return strtoupper($m[1]);

}, $val);

echo $val; // HelloWorldAgain

此外,如果您忽略有关e modifier的所有警告和注意事项,这也将起作用:

$val = 'hello_world_again';

$val = preg_replace('/(?:^|_)([a-z])/e', 'strtoupper($1)', $val);

echo $val; // HelloWorldAgain

这是另一种完全避免使用正则表达式的解决方案:

$val = 'hello_world_again';

$val = implode('', array_map(ucfirst, explode('_', $val)));

echo $val; // HelloWorldAgain

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值