C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#で文字列内の各単語の頭文字を取得して表示する方法

この記事では、C#を使って文字列内の各単語の最初の1文字(頭文字)だけを抽出し、表示する方法を解説します。例として、次のような文字列を扱います。

string str = "Never Give Up!";

手順1:文字列を単語ごとに分割する

まず、Split()メソッドを使って文字列を空白で分割し、各単語を配列として取得します。

string[] strSplit = str.Split();

手順2:各単語の頭文字を取り出して表示する

次に、foreachループで配列内の各単語を順に処理し、Substring(0, 1)メソッドを使って先頭の1文字を取り出します。Substring(0, 1)は「0番目の位置から1文字分」を切り出すという意味なので、必ず最初の文字が取得できます。

サンプルコード

using System;
public class Program {
    public static void Main() {
        string str = "Never Give Up!";
        Console.WriteLine("元の文字列= " + str);

        Console.WriteLine("各単語の頭文字を表示します...");
        string[] strSplit = str.Split();
        foreach (string res in strSplit) {
            Console.Write(res.Substring(0, 1));
        }
    }
}

実行結果

元の文字列= Never Give Up!
各単語の頭文字を表示します...
NGU

コードのポイント

  • Split()メソッド:引数なしで呼び出すと、空白文字(スペース)を区切りとして文字列を自動的に分割し、単語の配列を返します。
  • Substring(0, 1):文字列の先頭から1文字を抽出します。日本語の全角文字でも問題なく動作します。
  • Console.Write:改行せずに連続して出力するため、すべての頭文字が一列に並んで表示されます。

このように、Split()Substring()を組み合わせるだけで、複数単語からなる文字列から頭文字だけを簡単に抽出できます。名前のイニシャルを取得したい場合や、省略形を作成したい場合などに応用できる便利なテクニックです。

  1. Pythonのitertoolsを使って文字列の重複しない順列を先頭からn個出力する方法

    順列(パーミュテーション)とは、複数のオブジェクトを異なる並び順で表現したものです。しかし、与えられたオブジェクトの中に同じ要素が含まれている場合、生成される順列の中にまったく同じ並びが現れることがあります。この記事では、Pythonの標準ライブラリitertoolsを使って、重複を除いた一意な順列だけを効率よく取り出す方法を解説します。基本の考え方itertoolsモジュールには、順列を生成するためのpermutations()メソッドが用意されています。ただし、元の文字列に重複した文字が含まれていると、このメソッドは同一の並びを何度も返してしまいます。そこで、以下の手順で一意な順列のみを取

  2. Pythonで文字列内の最初に繰り返される単語を見つける方法

    文字列が1つ与えられ、その中で最初に繰り返し出現する単語を見つけるのが本記事のテーマです。この問題を実装する際には、Pythonの標準ライブラリである「collections」モジュールを活用します。collectionsが提供するCounter()クラスを使うことで、各単語の出現回数を簡単に集計できます。 アルゴリズム 処理の手順は以下のとおりです。 与えられた文字列をスペースで区切り、単語のリストに分割します。 単語のリストをCounter(辞書形式)に変換し、各単語の出現回数を集計します。 単語のリストを先頭から順に走査し、出現回数が1より多い最初の単語を特定します。 サンプルコード