- ベストアンサー
頭文字を大文字にしたい
perlのプログラムの中で名前の処理を行いたいと思っています。 そこで、SIHOをSihoに変化したり、masasiをMasasiのように最初の一文字を大文字にあとの文字を小文字に直す方法はありますでしょうか。 また、AyakaKurusugawaをAyakaとKurusugawaに分解したいのですがどのようにすればできますでしょうか。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
初めの方はnaturalさんのように、 ucfirst(lc($name)) とすれば求まります。 名前分割の方は、アルファベットのみの名と姓の組み合わせに限定すれば、 ($First, $Second) = ($name =~ /^([A-Z][a-z]*)([A-Z][a-z]*)$/); と書けます。
その他の回答 (1)
- natural
- ベストアンサー率37% (419/1115)
回答No.1
とりあえず最初の方だけ。 $name = lc($name); ・・・文字列$nameを全て小文字に変換 $name = ucfirst($name); ・・・文字列$nameの先頭一文字だけ大文字に変換 これで如何でしょうか? #因みにlcはlower case、ucはupper caseですのでそれぞれuc、lcfirstも存在します。
質問者
お礼
キチンと最初の文字のみを大文字に変化できました。 回答をお早くいただけ大変助かりました。
お礼
きちんと処理することができました。 特に2つ目の処理に関しては、別のところにも活用できました。またまだ、勉強することが多いことを実感しました。 次に質問したときもよろしくお願いします。