[c#] 文字列の最後の文字を削除する



3 Answers

このようにするのはどうですか?

strgroupids = string.Join( ",", groupIds );

たくさんのクリーナー。

それは、それぞれ','間に','付けてgroupIds内のすべての要素を追加しますが、末尾に','を入れません。

Question

私は、データベースにリンクされたリストで多くの情報を取得しています。

私は、ウェブサイトに接続している人のために、一連のグループを作りたいと思っています。

私はこれをテストするために使用します...しかし、これは動的ではないので、それは本当に悪いです:

string strgroupids = "6";

私は今これを使いたい。 しかし、返される文字列は1,2,3,4,5,ようなものです1,2,3,4,5,

groupIds.ForEach((g) =>
{
    strgroupids = strgroupids  + g.ToString() + ",";
    strgroupids.TrimEnd(',');
});

strgroupids.TrimEnd(new char[] { ',' });

私は、 5後に削除したいが、それは間違いなく働いていない..誰かが私を助けることができますか?




各項目のコンマを追加する代わりに、単にString.Joinを使用することもできます。

var strgroupids = String.Join(",",  groupIds);

これにより、配列内の各要素の間にセパレータ(この例では「、」)が追加されます。




拡張メソッドを追加します。

public static string RemoveLast(this string text, string character)
{
    if(text.Length < 1) return text;
    return text.Remove(text.ToString().LastIndexOf(character), character.Length);
}

使用します:

yourString.RemoveLast(",");



sllの解決策に追加:最後に空白がある場合に備えて、文字列をトリミングする方がよい。

strgroupids = strgroupids.Remove(strgroupids.Trim().Length - 1);



Related



Tags

c# c#   string   char