1

このような文字列配列に読み取ったファイルがあります

string[] myArray = { "1x Car green", "2x Plane red", "3x boat blue","etc","etc" };

私がやりたいのは、文字列配列のどこからでも数字、x、および空白を削除することです。そのため、残っているのは次のようなものだけです

string[] myArray = { "car green","Plane red","boat blue"};
4

6 に答える 6

2

あなたはこれを行うことができます -

myArray = myArray.Select(x => x.Substring(x.IndexOf(' ') + 1)).ToArray();

仮定- 配列内のすべての単語は で始まりますNx

于 2013-10-14T16:55:05.823 に答える
1

次のようなことができます。

myArray.map(function(e){ return e.substring(e.indexOf(' ') + 1) })
于 2013-10-14T16:52:48.937 に答える
0

次のようなことができます。

古い学校:

 string[] myArray = { "1x Car green", "2x Plane red", "3x boat blue", "etc", "etc" };
 for (int i = 0; i < myArray.Length; i++)
   {
     int indexOfSpace = myArray[i].IndexOf(' ')+1;
     if (indexOfSpace >= 0 && indexOfSpace < myArray[i].Length)
       myArray[i] = myArray[i].Substring(indexOfSpace);
   };

Linq: (Rohit Vats のようにわずかに変更)

myArray = myArray.Select(x => x.Substring(Math.Max(0, x.IndexOf(' ') + 1))).ToArray();
于 2013-10-14T16:56:11.640 に答える
0

誰かがより良い を提供する可能性が最も高いregexですが、あなたはその考えを理解しています.

string[] myArray = { "1x Car green", "2x Plane red", "3x boat blue", "etc", "etc" };
foreach (var item in myArray)
{
    Console.WriteLine(Regex.Replace(item, @"([\d]{1,}x )", ""));
}
于 2013-10-14T16:58:52.987 に答える