Saya menggunakan WinForms c #. Saya memiliki nilai string seperti di bawah ini,
string Something = "1,5,12,34,";
Saya perlu menghapus koma terakhir dalam sebuah string. Jadi Bagaimana cara menghapusnya?
Saya menggunakan WinForms c #. Saya memiliki nilai string seperti di bawah ini,
string Something = "1,5,12,34,";
Saya perlu menghapus koma terakhir dalam sebuah string. Jadi Bagaimana cara menghapusnya?
Jawaban:
Coba string.TrimEnd()
:
Something = Something.TrimEnd(',');
Jawaban Raja Raja tentu saja benar. Juga komentar Tim Schmelter juga merupakan saran yang bagus dalam kasus Anda.
Tetapi jika Anda mau benar benar menghapus koma terakhir dalam sebuah string , Anda harus mencari indeks koma terakhir dan menghapus like;
string s = "1,5,12,34,12345";
int index = s.LastIndexOf(',');
Console.WriteLine(s.Remove(index, 1));
Output akan menjadi;
1,5,12,3412345
Di sini a demonstration
.
Kecil kemungkinan Anda menginginkan cara ini, tetapi saya ingin menunjukkannya. Dan ingat, String.Remove
metode tidak menghapus karakter apa pun dalam string asli, ia mengembalikan string baru.
Metode TrimEnd mengambil larik karakter masukan dan bukan string. Kode di bawah ini dari Dot Net Perls , menunjukkan contoh yang lebih efisien tentang bagaimana melakukan fungsi yang sama seperti 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;
}
Atau Anda dapat mengubahnya menjadi Char Array terlebih dahulu dengan:
string Something = "1,5,12,34,";
char[] SomeGoodThing=Something.ToCharArray[];
Sekarang Anda memiliki setiap karakter indexed
:
SomeGoodThing[0] -> '1'
SomeGoodThing[1] -> ','
Mainkan saja
Saat Anda memiliki spasi di bagian akhir. Anda bisa menggunakan beliow.
ProcessStr = ProcessStr.Replace(" ", "");
Emails = ProcessStr.TrimEnd(';');
string
? Saya berasumsi karena sebuah loop yang menggabungkan koma denganint
s. Anda bisa menggunakanstring.Join(",", ints)
sebagai gantinya. Itu menghindari koma di tempat pertama.