このような文字列配列に読み取ったファイルがあります
string[] myArray = { "1x Car green", "2x Plane red", "3x boat blue","etc","etc" };
私がやりたいのは、文字列配列のどこからでも数字、x、および空白を削除することです。そのため、残っているのは次のようなものだけです
string[] myArray = { "car green","Plane red","boat blue"};
あなたはこれを行うことができます -
myArray = myArray.Select(x => x.Substring(x.IndexOf(' ') + 1)).ToArray();
仮定- 配列内のすべての単語は で始まりますNx
。
次のようなことができます。
myArray.map(function(e){ return e.substring(e.indexOf(' ') + 1) })
次のようなことができます。
古い学校:
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();
誰かがより良い を提供する可能性が最も高い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 )", ""));
}