【C#】文字列からn番目の文字を削除する方法
C#で文字列から特定の位置にある文字を削除したい場合は、Remove()メソッドを使用します。このメソッドでは、削除を開始するインデックス位置と、削除する文字数を指定できます。
基本的な使い方
まず、対象となる文字列を設定します。
string str1 = "Amit";
Console.WriteLine("Original String: "+str1);次に、StringBuilderを作成し、4番目の位置(インデックス3)にある文字を1文字削除します。なお、C#のインデックスは0から始まるため、先頭の文字がインデックス0に相当することに注意してください。
StringBuilder strBuilder = new StringBuilder(str1); strBuilder.Remove(3, 1);
サンプルコード
以下のコードを実行すると、文字列からn番目の文字を削除することができます。
using System;
using System.Text;
public class Demo {
public static void Main(string[] args) {
string str1 = "Amit";
Console.WriteLine("Original String: "+str1);
StringBuilder strBuilder = new StringBuilder(str1);
strBuilder.Remove(3, 1);
str1 = strBuilder.ToString();
Console.WriteLine("String after removing a character: "+str1);
}
}実行結果
Original String: Amit String after removing a character: Ami
ポイントの解説
この例では、strBuilder.Remove(3, 1) の第一引数「3」が削除開始位置(0始まりのインデックス)、第二引数「1」が削除する文字数を表しています。そのため、文字列「Amit」の4番目の文字「t」が削除され、「Ami」という結果になります。
また、StringBuilderを使用する理由は、string型が不変(イミュータブル)であるためです。string型を直接編集するたびに新しいインスタンスが生成されますが、StringBuilderを使えば効率的に文字列を操作できます。削除後は ToString() メソッドで再びstring型に戻しています。
-
Pythonで文字列からn番目の文字を削除するプログラムの書き方
はじめにこの記事では、以下の問題に対する解決方法を解説します。問題文 − 与えられた文字列から、指定したインデックス(i番目)の文字を削除し、その結果を表示します。Pythonの文字列では、インデックスは必ず0から始まるという点に注意してください。例えば、「Tutorialspoint」という文字列の場合、各文字のインデックスは以下のように対応しています。T u t o r i a l s p o i n t 0 1 2 3 4 5 6 7 8 9 10 11 12 13それでは、この問題を解決するためのPythonスクリプトを見ていきましょう。実装例def remove(string
-
Pythonで文字列からn番目の文字を削除する方法【サンプルコード付き】
Pythonにおいて、文字列は文字の配列として扱われます。そのため、先頭の文字のインデックスは「0」から始まり、各文字の位置(インデックス)を簡単に取得できます。この性質を利用すると、指定したn番目の文字だけを削除することが可能です。 基本的な考え方はシンプルです。削除したい文字のインデックス番号を受け取り、元の文字列を次の2つの部分文字列に分割します。 n番目のインデックスの文字より前の部分 n番目のインデックスの文字より後の部分 その後、この2つの部分文字列を連結すれば、n番目の文字が取り除かれた新しい文字列が完成します。 実行例 入力: python 削除するインデックス: 3 出