Преобразовать массив строк в нижний регистр - PullRequest
23 голосов
/ 30 мая 2011

У меня есть строковый массив string[] MyArray.Какой самый быстрый (то есть наименьший код, а не самая быстрая производительность) способ преобразовать все элементы строкового массива в нижний регистр?

Ответы [ 7 ]

54 голосов
/ 30 мая 2011
var MyArrayLower = MyArray.Select(s => s.ToLowerInvariant()).ToArray();

(или

MyArray = MyArray.Select(s => s.ToLowerInvariant()).ToArray();

, если вы хотите заменить существующий массив новым экземпляром string[].)

13 голосов
/ 05 февраля 2014

Самый простой подход:

MyArray = MyArray.ConvertAll(d => d.ToLower());
8 голосов
/ 30 мая 2011

Без создания нового массива.

for (int i = 0; i < MyArray.Length; i++)
    MyArray[i] = MyArray[i].ToLower();
1 голос
/ 30 мая 2011
strin[] MyArrayLower = (from str in MyArray
                        select str.ToLower()).ToArray();
0 голосов
/ 02 ноября 2017
myArray = Array.ConvertAll(myArray, x => x.ToLower());

Примечание: это очень близко к ответу 'prasadd', но работает со строковыми массивами.

0 голосов
/ 30 мая 2011

Я бы пошел с

var lowercaseStringArray = myStringArray.Select(c => c.ToLower()).ToArray();
0 голосов
/ 30 мая 2011

Я бы не использовал это в производстве:

MyArray = string.Join(";", MyArray).ToLower().Split(';');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...