情報
要求されたトピックは次のとおりです。しかし、このトピックはこのライブラリには含まれていません。

String.Insert メソッド

2013/12/12

このインスタンス内の指定されたインデックス位置に指定された文字列を挿入した新しい文字列を返します。

Namespace:  System
アセンブリ:  mscorlib (mscorlib.dll 内)

public string Insert(
	int startIndex,
	string value
)

パラメーター

startIndex
型: System.Int32
挿入先インデックス位置。
value
型: System.String
挿入する文字列。

戻り値

型: System.String
このインスタンスと等価で、startIndex の位置に value が挿入された新しい文字列。

例外条件
ArgumentNullException

valuenull です。

ArgumentOutOfRangeException

startIndex が負か、またはこのインスタンスの長さより大きい値です。

startIndex とこのインスタンスの長さが等しい場合は、このインスタンスの末尾に value が追加されます。

メモメモ:

このメソッドは、現在のインスタンスの値を変更しません。代わりに、現在のインスタンスに value を挿入した新しい文字列を返します。

たとえば、"abc".Insert(2, "XYZ") の戻り値は "abXYZc" です。

次の例では、Insert メソッドを使用して、ランダムに選択された 2 つの形容詞を、文字列中の 2 つの名詞の前に挿入しています。


using System;

public class Example
{
   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
   {
      // Initialize random number generator to define adjectives to use.
      Random rnd = new Random();

      string animal1 = "fox";
      string animal2 = "dog";
      string[] animal1Adjectives = { "quick", "fast", "speedy", "energetic" };
      string[] animal2Adjectives = { "lazy", "sleeping", "slow-moving", "slothful" };
      string strTarget = String.Format("The {0} jumped over the {1}.", animal1, animal2);
      outputBlock.Text += String.Format("The original string is:\n{0}\n", strTarget);

      // Generate a random number to extract an adjective from the array
      // to describe each animal.
      int animal1AdjectivePosition = rnd.Next(animal1Adjectives.GetLowerBound(0),  
                                              animal1Adjectives.GetUpperBound(0) + 1);
      int animal2AdjectivePosition = rnd.Next(animal1Adjectives.GetLowerBound(0),  
                                              animal1Adjectives.GetUpperBound(0) + 1);                                             
      string animal1Adjective = animal1Adjectives[animal1AdjectivePosition] + " ";
      string animal2Adjective = animal2Adjectives[animal2AdjectivePosition] + " ";

      strTarget = strTarget.Insert(strTarget.IndexOf(animal1), animal1Adjective);
      strTarget = strTarget.Insert(strTarget.IndexOf(animal2), animal2Adjective);

      outputBlock.Text += String.Format("\nThe final string is:\n{0}\n", strTarget);
   }
}
// The output from the example may appear as follows:
//       The original string is:
//       The fox jumped over the dog.
//
//       The final string is:
//       The quick fox jumped over the slothful dog.


Windows Phone OS

サポート: 8.0, 7.1, 7.0

表示: