【Java】trimを使った空白除去を、初心者にもわかりやすく説明。
  • facebookページ
  • twitterページ
  • 2019.11.27

    【Java】trimを使った空白除去を、初心者にもわかりやすく説明。

    String型の文字列を扱っているときに空白や改行に不満を覚えた経験のある方は沢山いると思います。

    例えばデータベースに登録する際にも姓と名の間に空白が合った場合、これをどう扱うかで悩んだり。

    今回はそんな悩みを解消すべく、”trim”について解説してみたいと思います。

    空白や改行コード、タブなどにお悩みの初心者の方は是非ともこの記事を読んでください!

    “trim”の基本

    “trim”の基本は何と言っても空白除去でしょう。

    java.lang.Stringクラスの”trim”メソッドを使えば、文字列の先頭と末尾にある連続した空白と制御文字を全て削除することが出来ます。

    まずは次のコードを見てみましょう。

    実行結果

    “trim”を使うとこのように文字列からスペースが除去されているのが確認できます。

    改行コードの除去

    次は先ほどの文字列に改行コードを追加して同じように”trim”の挙動を確認してみましょう。

    改行コードを除去する場合にも”trim”は有効です。

    次のコードで確認してみましょう。

    実行結果

    実行結果を見てください。このように簡単に除去することが出来ました。

    削除できない場合について

    “trim”メソッドは空白除去を目的としたメソッドですが、”trim”では除去できないものもあります。

    除去できないものについては以下の通りです。

    trimで除去できないもの
    • 全角スペース
    • 文字列間の空白(「テスト 太郎」でいうと姓と名の間の空白)

    これらを削除したい場合には別のメソッドを使う必要が有りますので注意してください。

    実際にサンプルコードを見てみましょう。

    実行結果

    このように末尾の全角スペースのみ”trim”では除去されていないことが確認できます。

    replaceAllを使う方法

    ava.lang.Stringクラスのメソッドには”trim”メソッドだけでなく”replaceAll”メソッドというものも用意されています。

    先ほど除去できなかった全角スペースなどは、この”replaceAll”を使って除去することが出来ます。

    “replaceAll”の記述ルールは以下の通りです。

    “replaceAll”の第一引数には置き返したい対象の文字列を、第二引数には置き換えた後の文字列をそれぞれ記述します。

    では早速実際にコードを見てみましょう。

    実行結果

    置き換え前には文字列の間にも半角スペースがありますが、replaceAllを使って全角と半角のスペースを全て置き換えているため、ありとあらゆるスペースがなくなっていることが分かります。

    シーンによって工夫が必要になることも

    ここまでは”trim”と”replaceAll”について解説してきました。

    しかし例えばフォームを作成した場合、一定のルールを設けていないと仮定すると、ユーザーは様々な型の入力をすることがあります。

    例えば簡単に思い浮かぶものだけでも「サンプル太郎」「サンプル 太郎(全角スペース)」「サンプル 太郎(半角スペース)」の三つがありますよね?

    これを統一してデータベースに登録させるために全てをユーザーにお願いは出来ません。

    このような場合にはどうすれば良いのでしょうか?

    色々考えられる方法はありますが最も簡単な方法は、まずフォーム内に”姓”と”名”の入力欄を分けて作り、それをプログラム側で結合させます。

    この時に結合させる前の段階で”姓”と”名”に”replaceAll”を使用し、全てのスペースや改行のチェックをかけ、成形後に結合させます。

    こうすることで、一定のルールをユーザーに気づかせないままこちら側で決めることができ、データベースに登録する際にも同じ形式で登録が可能となります。

    このように、プログラム単体で全てを簡潔させようとせず一工夫加えることでユーザーをわずらわしさから解放出来ることを覚えておきましょう。

    まとめ

    いかがでしたか?

    今回はava.lang.Stringクラスの二つのメソッド、”trim”と”replaceAll”について解説してみました。

    実際にはプログラムを作る目的としてデータベースへの登録なども頻繁に発生しますので、この記事を基に”trim”と”replaceAll”を完璧に使いこなせるようにしておきましょう。

     



    優良フリーランス案件多数掲載中!
    フリーランスエンジニアの案件をお探しなら
    ポテパンフリーランス

    この記事をシェア

    • Facebookシェア
    • Twitterシェア
    • Hatenaシェア
    • Lineシェア
    pickup









    ABOUT US

    ポテパンはエンジニアと企業の最適なマッチングを追求する企業です。

    READ MORE