반응형
안녕하세요.
C#에서 문자열을 특정 기호를 기준으로 split하는 방법에 대해 알아보겠습니다.
그냥하면 심심하니 문제를 낼게요.
string str = "나, 하, 바, 라, 카, 타, 가";
로 등록된 문자열을 가나다 순서대로 정렬해서 다시 표시하시오.
위 문제를 해결 하려면 str 값을 ' , ' 기준으로 split 한 다음
정렬 해서 다시 문자열을 합쳐서 표시해주면 됩니다.
string[] arrStr = str.Split(',');
관련된 문구는 위 와 같이 사용하면 됩니다.
전체 소스를 볼게요.
주의할 점은 문자열을 분리할 때 공백까지 분리가 되기 때문에,
정렬하기전에 공백을 제거한 후 정렬을 해야 합니다.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.CompilerServices;
using System.Text;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
string str = "나, 하, 바, 라, 카, 타, 가";
//문자열 분리
string[] arrStr = str.Split(',');
List<string> strList = new List<string>();
//공백제거 후 List에 값 넣기
foreach (string arr in arrStr)
strList.Add(arr.Trim());
//오름차순으로 정렬
strList.Sort((x, y) => x.CompareTo(y));
//문자열 합치기
StringBuilder sb = new StringBuilder();
foreach(string value in strList)
{
sb.Append(value.Trim());
if (strList.Last() != value)
sb.Append(", ");
}
Console.WriteLine("원래값 : " + str);
Console.WriteLine("변경값 : " + sb.ToString());
}
}
}
실행결과를 통해서 보면 잘 정렬되서 나오는 것을 볼 수 있습니다.
특정 기호를 기준으로 문자열을 분리해서 사용하는 방법에 대한 예제였습니다.
감사합니다.
반응형
'C#' 카테고리의 다른 글
배열에 있는 String 값을 연결하는 방법 (0) | 2021.05.25 |
---|---|
C# 대칭수(회문수 - Palindromic number ) 인지 확인하는 소스 (0) | 2020.10.26 |
C# 10진수를 2진수, 8진수, 16진수로 표시하는 방법 (0) | 2020.10.26 |
C# 함수에 virtual ( 함수 재 정의 )사용 예제입니다. (0) | 2020.10.26 |
C# 문자를 숫자로 변환하는 법 (0) | 2020.10.21 |
댓글