Войти

Показать полную графическую версию : Преобразование таблицы в массив


Laos
26-08-2013, 20:43
Доброго времени суток, господа!
Возник вопрос с преобразованием таблицы из текстового файла в массив и последующей его сортировкой
Пример: Есть файл table.txt с содержанием IP, порта и успешного/неуспешного коннекта к нему. [Tab] - табуляция в файле

192.168.0.9[tab][tab]NoConnect
192.168.0.2[tab]21[tab]Connect
192.168.0.3[tab]80[tab]Connect
192.168.0.5[tab][tab]NoConnect

Необходимо сформировать отсортированный массив (или такой же текстовый файл) по IP из исходного файла, чтобы получилось:

192.168.0.2[tab]21[tab]Connect
192.168.0.3[tab]80[tab]Connect
192.168.0.5[tab][tab]NoConnect
192.168.0.9[tab][tab]NoConnect

Есть идея загнать весь текст файла через split(), чтобы разделить все слова, а потом в цикле делать пересчет каждого 3 слова и записывать в массив, но мне кажется возможно более изящно сделать.
Прошу помощи, т.к. полный профан в парсинге строк.
Спасибо

Kazun
26-08-2013, 22:33
Get-Content ip.txt | sort {[version]($_-split "\s")[0]}

Laos
27-08-2013, 14:20
Вау! Спасибо огромное! В принципе понял, только вот последнее [0] что означает?

Foreigner
27-08-2013, 14:43
что означает?
Первый элемент массива split'а

Laos
27-08-2013, 14:55
Большое спасибо




© OSzone.net 2001-2012