WinForms c#を使用します。以下のような文字列値があります。
string Something = "1,5,12,34,";
文字列の最後のコンマを削除する必要があります。どうすれば削除できますか?
string.TrimEnd()
を試してください:
Something = Something.TrimEnd(',');
キングキングの答え はもちろん正しい。また、 Tim Schmelterのコメント もあなたの場合に良い提案です。
しかし、really文字列の最後のコンマを削除したい場合、最後のコンマのインデックスを見つける必要があります同様に削除します。
string s = "1,5,12,34,12345";
int index = s.LastIndexOf(',');
Console.WriteLine(s.Remove(index, 1));
出力は次のようになります。
1,5,12,3412345
ここで demonstration
。
あなたがこのように望むことはあまりありそうにないが、私はそれを指摘したい。 String.Remove
メソッドは元の文字列の文字を削除せず、新しい文字列を返します。
string.Remove();
を試してください
string str = "1,5,12,34,";
string removecomma = str.Remove(str.Length-1);
MessageBox.Show(removecomma);
TrimEndメソッドは、文字列ではなく入力文字配列を受け取ります。 Dot Net Perls の以下のコードは、TrimEndと同じ機能を実行する方法のより効率的な例を示しています。
static string TrimTrailingChars(string value)
{
int removeLength = 0;
for (int i = value.Length - 1; i >= 0; i--)
{
char let = value[i];
if (let == '?' || let == '!' || let == '.')
{
removeLength++;
}
else
{
break;
}
}
if (removeLength > 0)
{
return value.Substring(0, value.Length - removeLength);
}
return value;
}
または、次の方法で最初にChar配列に変換できます。
string Something = "1,5,12,34,";
char[] SomeGoodThing=Something.ToCharArray[];
これで、各文字indexed
が得られました。
SomeGoodThing[0] -> '1'
SomeGoodThing[1] -> ','
遊びましょう