広告スペース(バナー)
🍎Objective-C レッスン
基本文法の基礎8
データ構造とオブジェクト指向7
構文の基本を深める9
関数とデータ構造の応用9
アルゴリズムとテストの基礎8
文字列・数値操作の応用8
実務で役立つ機能8
アルゴリズム練習問題10
レッスン 39 / 68

文字列の正規化(空白除去・大文字小文字の統一)

このレッスンでは、Objective-Cで文字列を正規化する方法を学び、表記ゆれを統一して比較できるようになることを目標にします。「Objective-C 文字列 正規化」で調べている方向けです。

ユーザーが入力した文字列には、前後の余分な空白や、大文字・小文字の表記ゆれが含まれがちです。stringByTrimmingCharactersInSet:で空白を取り除き、lowercaseStringで比較しやすい形に統一することを正規化と呼びます。

サンプルコードでは、normalize()関数の中で[NSCharacterSet whitespaceCharacterSet]を使って前後の空白を取り除き、lowercaseStringで小文字に統一しています。" Hello World ""hello world"という見た目の違う2つの文字列が、正規化後には同じものとして比較できる様子を確認できます。

初心者がよくつまずくのが、この処理をせずに文字列を比較してしまうことです。人間には同じに見えてもfalseと判定されてしまうことがあり、原因が分かりにくいバグにつながります。

実際の開発現場では、入力チェックやログイン処理などで欠かせない、実務でも頻出の基本テクニックとして正規化処理が使われます。

📖 お手本コード
✍️ あなたのコード
コードを書いたら「実行する」を押してください

🧪 このサイトではObjective-Cを直接コンパイル・実行できないため、お手本コードと同じ内容を入力できたかをその場で判定します(採点はブラウザ内だけで行われ、どこにも送信されません)。

🎯
ここまでできればゴール達成!
表記のゆれを吸収して、ユーザー入力を正しく比較できるようになります。
広告スペース(バナー)
広告スペース(記事内)