의 :LINQ - 문자열의 목록 - 순서 편지들만 한 다음 예를 들어 숫자
이 배열 :
a 2
a 10
a
후 정렬해야한다 :
a
a 2
a 10
나는이 시도 ,하지만 작동하지 않습니다 : 순서가 잘못되었습니다.
...
.OrderBy(s => s.name)
.ThenBy(s => {
var stringNumber = Regex.Match(s.name, @"\d+").Value;
return string.IsNullOrEmpty(stringNumber)
? 0
: int.Parse(stringNumber);
});
정확히 "작동하지 않는다"는 것은 무엇을 의미합니까? 그리고 당신의'name'은 항상 다음과 같이 보입니까 : single character-space-number? –
ur 산출물은 무엇입니까 – Raizzen
문제는 처음에는 ** 전체 문자열 **로 정렬하므로,'ThenBy'는 더 이상 효과가 없으므로 문자 만'OrderBy'하고 숫자 만'ThenBy'해야합니다. –