반응형
문자열에서 마지막 특정 문자 제거 C #
WinForms c #을 사용합니다. 아래와 같은 문자열 값이 있습니다.
string Something = "1,5,12,34,";
문자열에서 마지막 쉼표를 제거해야합니다. 그래서 어떻게 삭제할 수 있습니까?
시도해보십시오 string.TrimEnd()
:
Something = Something.TrimEnd(',');
King King의 대답 은 물론 맞습니다. 또한 Tim Schmelter의 의견 은 귀하의 경우에도 좋은 제안입니다.
그러나 문자열에서 마지막 쉼표를 정말로 제거하려면 마지막 쉼표 의 색인을 찾아서 다음과 같이 제거해야합니다.
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 Array로 변환 할 수 있습니다.
string Something = "1,5,12,34,";
char[] SomeGoodThing=Something.ToCharArray[];
이제 각 캐릭터가 있습니다 indexed
.
SomeGoodThing[0] -> '1'
SomeGoodThing[1] -> ','
주변에서 놀아
Dim psValue As String = "1,5,12,34,123,12"
psValue = psValue.Substring(0, psValue.LastIndexOf(","))
산출:
1,5,12,34,123
참고 URL : https://stackoverflow.com/questions/20246461/remove-last-specific-character-in-a-string-c-sharp
반응형
'Programing' 카테고리의 다른 글
Laravel-보기 위해 둘 이상의 변수 전달 (0) | 2020.11.16 |
---|---|
mysql-python 설치 오류 : 'config-win.h'포함 파일을 열 수 없습니다. (0) | 2020.11.16 |
Objective-C에서 ID가 주어지면 어떤 유형의 객체를 가리키는 지 어떻게 알 수 있습니까? (0) | 2020.11.16 |
Swift : API 키를 구현하기 위해 PREPROCESSOR 플래그 (`#if DEBUG`와 같은)를 사용하는 방법은 무엇입니까? (0) | 2020.11.16 |
webpack TS2304 'Map', 'Set', 'Promise'이름을 찾을 수 없습니다. (0) | 2020.11.16 |