perlのプログラムの中で名前の処理を行いたいと思っています。
そこで、SIHOをSihoに変化したり、masasiをMasasiのように最初の一文字を大文字にあとの文字を小文字に直す方法はありますでしょうか。
また、AyakaKurusugawaをAyakaとKurusugawaに分解したいのですがどのようにすればできますでしょうか。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

初めの方はnaturalさんのように、


  ucfirst(lc($name))
とすれば求まります。

名前分割の方は、アルファベットのみの名と姓の組み合わせに限定すれば、
  ($First, $Second) = ($name =~ /^([A-Z][a-z]*)([A-Z][a-z]*)$/);
と書けます。
    • good
    • 0
この回答へのお礼

きちんと処理することができました。
特に2つ目の処理に関しては、別のところにも活用できました。またまだ、勉強することが多いことを実感しました。
次に質問したときもよろしくお願いします。

お礼日時:2001/08/29 13:32

とりあえず最初の方だけ。



$name = lc($name); ・・・文字列$nameを全て小文字に変換
$name = ucfirst($name); ・・・文字列$nameの先頭一文字だけ大文字に変換

これで如何でしょうか?

#因みにlcはlower case、ucはupper caseですのでそれぞれuc、lcfirstも存在します。
    • good
    • 0
この回答へのお礼

キチンと最初の文字のみを大文字に変化できました。

回答をお早くいただけ大変助かりました。

お礼日時:2001/08/29 13:25

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング

おすすめ情報