目次⇒ 文字列操作とは? length と trim() slice() / substring() replace() / replaceAll() includes() / startsWith() / endsWith() split() と大文字小文字変換 実践でよくある使い方 よくある注意点 まとめ TOP
この記事では、JavaScript / TypeScriptでよく使う 文字列操作メソッド について詳しく解説します。
文字列は、名前・メールアドレス・検索キーワード・文章・URLなど、Webアプリのさまざまな場面で登場します。
そのため、文字列の長さを調べる、前後の空白を消す、一部を切り出す、置換する、含まれているか調べる、といった処理は非常によく使います。
この記事では、基本的なメソッドを中心に、実務でもよく使う定番の文字列操作を順番に整理していきます。
解説:
文字列操作とは、文字の並びを調べたり、切り出したり、変換したり、置き換えたりする処理のことです。
JavaScriptでは、文字列は String として扱われ、多くの便利なメソッドが用意されています。
フォーム入力や検索機能、表示用テキストの加工など、実際のアプリでは非常に出番が多いです。
const text = 'こんにちは、JavaScript!';
console.log(text.length); // 文字数
console.log(text.includes('Java')); // 含まれているか
解説:
文字列操作で最初に覚えたいのが、文字数を調べるための length と、前後の空白を取り除くための trim() です。
どちらもフォーム入力やバリデーションでよく使われます。
const text = 'Hello';
console.log(text.length); // 結果 : 5
length はメソッドではなく、プロパティです。
そのため、() は不要です。
const name = ' 太郎 ';
console.log(name.trim()); // 結果 : '太郎'入力欄でスペースだけ入っているケースを防ぐときにとても便利です。
const value = input.value.trim();
if (value.length === 0) {
console.log('未入力です');
}trim() と length を組み合わせると、空欄チェックの基本形になります。
解説:
文字列の一部だけを取り出したいときは、slice() や substring() を使います。
メールアドレスの一部表示や、長い文章の抜粋を作るときなどに役立ちます。
const text = 'JavaScript';
console.log(text.slice(0, 4)); // 結果 : Java
console.log(text.slice(4)); // 結果 : Script
最初の引数が開始位置、2つ目の引数が終了位置です。
終了位置は含まれません。
const text = 'JavaScript';
console.log(text.substring(0, 4)); // 結果 : Java基本的な使い方は似ていますが、実務では slice() のほうが見かける機会は多めです。
const message = 'これはとても長い文章です';
const shortText = message.slice(0, 8) + '...';
console.log(shortText);
解説:
文字列の一部を別の文字に置き換えたいときは、replace() や replaceAll() を使います。
表示用テキストの調整や、入力値の整形で便利です。
const text = 'りんご みかん りんご';
console.log(text.replace('りんご', 'バナナ'));
// 結果 : バナナ みかん りんごconst text = 'りんご みかん りんご';
console.log(text.replaceAll('りんご', 'バナナ'));
// 結果 : バナナ みかん バナナすべて一括で置き換えたいときは、replaceAll() がわかりやすいです。
const phone = '090-1234-5678';
const normalized = phone.replaceAll('-', '');
console.log(normalized); // 結果 : 09012345678const text = ' JavaScript 入門 ';
const normalized = text.replaceAll(' ', ' ').trim();
console.log(normalized); // 結果 : JavaScript 入門
このように、replaceAll() は記号や全角スペースの統一にも便利です。
入力値をきれいに整えてから保存したいときによく使われます。
解説: 文字列の中に特定の文字が含まれているか、先頭や末尾が一致しているかを調べたいときに便利なのが、これらのメソッドです。
const email = 'test@example.com';
console.log(email.includes('@')); // 結果 : trueconst url = 'https://example.com';
console.log(url.startsWith('https://')); // 結果 : trueconst fileName = 'photo.png';
console.log(fileName.endsWith('.png')); // 結果 : trueURLチェック、ファイル拡張子チェック、キーワードの有無確認などに役立ちます。
解説:
文字列を区切って配列にしたいときや、大文字・小文字を変えたいときもよくあります。
検索や表示、データ整形で出番の多い基本操作です。
const csv = '赤,青,黄';
const colors = csv.split(',');
console.log(colors); // 結果 : ['赤', '青', '黄']
split() は文字列を配列に変える代表的なメソッドです。
逆に、配列から文字列へ戻したいときは配列の join() を使います。
const tags = 'JavaScript, HTML, CSS';
const tagList = tags.split(',').map((tag) => tag.trim());
console.log(tagList); // 結果 : ['JavaScript', 'HTML', 'CSS']実務では、split() のあとに trim() を組み合わせて、余分な空白を取り除くこともよくあります。
const text = 'JavaScript';
console.log(text.toUpperCase()); // 結果 : JAVASCRIPT
console.log(text.toLowerCase()); // 結果 : javascript英字の比較を安定させたいときは、事前に小文字や大文字へそろえることがよくあります。
入力した文字列を小文字に変換し、カンマ区切りで分割して表示します。
ここに結果が表示されます
解説:
最後に、実務で文字列メソッドがどう使われるか、よくある例を見ておきましょう。
実際には、複数のメソッドを組み合わせて使うことが多いです。
const userName = input.value.trim();if (!email.includes('@')) {
console.log('メール形式が不正です');
}const preview = articleText.slice(0, 30) + '...';const tags = 'JavaScript,HTML,CSS'.split(',');const lines = textarea.value
.split('\n')
.map((line) => line.trim())
.filter((line) => line !== '');
console.log(lines);const priceText = '1,980円';
const numberText = priceText.replace(',', '').replace('円', '');
console.log(numberText); // 結果 : 1980こうした細かな処理が積み重なって、使いやすいUIやデータ処理につながっていきます。
解説:
文字列メソッドは便利ですが、初学者の方がつまずきやすいポイントもあります。
基本的な注意点をまとめておきましょう。
const text = 'hello';
text.toUpperCase();
console.log(text); // 結果 : hello多くの文字列メソッドは、元の文字列を直接変更せず、新しい文字列を返す形です。
console.log('JavaScript'.includes('java')); // 結果 : false比較前に toLowerCase() や toUpperCase() でそろえると安定します。
絵文字や一部の特殊文字では、length の結果と見た目の文字数が一致しないことがあります。
これは文字列処理でよくある落とし穴なので、長さチェックでは仕様を意識することが大切です。
文字列操作メソッドは、JavaScript / TypeScriptで非常によく使う基本技術です。
入力値の整形、検索、表示の加工など、さまざまな場面で登場します。
文字列操作に慣れてきたら、次は次のようなテーマにも進みやすくなります。
文字列操作は地味に見えて、実際にはかなり実用的です。よく使うメソッドから少しずつ慣れていくと、日々のコーディングがかなり楽になります。