次のような文字列を大文字にしたいと思います。
¿"hello"?
関数を返したい
¿"Hello"?
regex と preg_match を試してみましたが、うまくいきませんでした...これは、これに関連する以前の質問です 。
皆さん、ありがとうございました!
次のような文字列を大文字にしたいと思います。
¿"hello"?
関数を返したい
¿"Hello"?
regex と preg_match を試してみましたが、うまくいきませんでした...これは、これに関連する以前の質問です 。
皆さん、ありがとうございました!
上記のASCII時間のようにpreg_replace_callbackを使用しますが、ユニコードと互換性があります。
echo preg_replace_callback('/^(\PL*)(\pL)/u', function($matches){
return $matches[1] . mb_strtoupper($matches[2],'UTF-8');
}, '¿"éllo"?'),"\n";
出力:
¿"Éllo"?
preg_replace_callbackを使用して実行できます。
preg_replace_callback('/^([^a-z]*)([a-z])/i', function($matches){
return $matches[1] . strtoupper($matches[2]);
}, '¿"hello"?');
// ¿"Hello"?
ucfirst
関数http://php.net/manual/en/function.ucfirst.phpを試す
そのようなタスクには正規表現は必要ありません
サンプル
$foo = 'hello world!';
$foo = ucfirst($foo); // Hello world!