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

C#で文字列内の単語を逆順に反転させるプログラムの書き方

C#では、LINQのReverse()メソッドを活用することで、文字列内の各単語を簡単に逆順に反転させることができます。本記事では、具体的なサンプルコードとともにその実装方法を解説します。

処理の概要

まず、例として次のような文字列を用意します。

Hello World

この文字列に対して各単語を反転させると、結果は次のようになります。

olleH dlroW

このように、単語の区切り位置はそのまま維持しつつ、それぞれの単語の中身だけが逆順になっている点がポイントです。

サンプルコード

Split()メソッドで文字列を単語ごとに分割し、Select()内でReverse()を使って各単語を反転させています。最後にstring.Join()で再び連結して結果を出力します。

using System;
using System.Linq;

class Demo {
   static void Main() {
      // 元の文字列
      string str = "Hello World";

      // 文字列内の各単語を反転
      string res = string.Join(" ", str.Split(' ').Select(s => new String(s.Reverse().ToArray())));

      Console.WriteLine(res);
   }
}

実行結果

olleH dlroW

コードの解説

このプログラムの処理の流れは以下の通りです。

1. 文字列の分割: str.Split(' ')によって、スペースを区切り文字として「Hello」と「World」の2つの単語に分割されます。

2. 各単語の反転: Select(s => new String(s.Reverse().ToArray()))により、各単語の文字を1文字ずつ逆順に並べ替えた新しい文字列を生成します。

3. 結果の連結: string.Join(" ", ...)で、反転済みの単語同士をスペースで連結し、最終的な文字列を作成します。

この手法はLINQを利用しているため、コードが簡潔で可読性が高く、実務でもそのまま活用できるパターンです。文章の暗号化やテキスト変換ツールなど、さまざまな場面で応用できます。

  1. Pythonで文字列内の単語を逆順に並べ替える方法

    Pythonでは、split()メソッドとreversed()関数を組み合わせることで、文字列内のすべての単語を簡単に逆順にすることができます。この記事では、具体的な手順とサンプルコードを通じて、その実装方法を解説します。 やりたいこと まず、入力と出力のイメージをサンプルで確認しましょう。 入力: string = I am a python programmer 出力: programmer python a am I 別の例も見てみます。 入力: string = tutorialspoint is a educational website 出力: website educatio

  2. Pythonで文中の単語数をカウントする方法|split()とisalpha()を使った2つのアプローチ

    本記事では、Pythonを使って文章中の単語数を数えるための解法と、その具体的なアプローチについて詳しく解説します。 問題定義 ある文が与えられたとき、その文に含まれる単語の総数をカウントするプログラムを作成します。 ここでは、以下の2つのアプローチを取り上げます。 アプローチ1: split()関数を使用する方法 アプローチ2: strip()関数とisalpha()関数を組み合わせる方法 アプローチ1:split()関数を使う方法 最もシンプルな方法は、文字列に対してsplit()関数を適用するやり方です。split()はデフォルトで空白文字(スペースやタブなど)を区切りとして文字列を