Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   Скрипт по обработке текстового файла (http://forum.oszone.net/showthread.php?t=143519)

Space-06 26-06-2009 01:07 1151958

Скрипт по обработке текстового файла
 
Доброго здравия всем формумчанам!!!
Собственно возник опять вопросик по AutoIt и хотелось бы у вас посоветоваться:
Есть текстовый файл примерно такого содержания:

№ счета, ФИО, сумма, 44 таких строк в файле очень много, и они разные.

Собсвенно в этом то и вопрос: необходимо каким то способом сделать построчное изменение структуры, чтоб в конце получилось вот такая конструкция:
1 44 №счета ФИО сумма. в Первом случае разделитель между значениями (,) - а в итоге нужен пробел

Сам стал экпериметировать с массивами и заменой внутри их, но увы _ArraySwap - умеет работать только с одно мерными массивами, да и если бы получилось весь файл с учетом разделителей ввести в массив и заменить в нем содержнания ( поменять значения ячеек - то проблем бы думаю поубавилось бы)
теперь почему то чуток заплутал как бы проще ...

Просьба подскажите решение.

Creat0R 26-06-2009 01:13 1151960

Цитата:

Цитата Space-06
Есть текстовый файл примерно такого содержания »

Примерно не подходит, давайте точное содержание файла (пару строк с него), и точно что должно получится на выходе (в тот же файл?).

Space-06 26-06-2009 07:20 1152025

Собственно вот файл:
4230181010303хххххххх,Бояршинова Мария Гордеевна,7860.98,44
4230181010303хххххххх,Ковыляева Нина Ивановна,5282.25,44
4230181010303хххххххх,Ильясов Эдиссон Идрисович,6411.13,44

а результат должен быть таким:
1 44 4230181010303хххххххх 7860.98 Бояршинова Мария Гордеевна
1 44 4230181010303хххххххх 5282.25 Ковыляева Нина Ивановна
1 44 4230181010303хххххххх 6411.13 Ильясов Эдиссон Идрисович

во втором случае в первую позицию добавляется "1"

amel27 26-06-2009 09:51 1152084

Space-06, где-то так:
Код:

$file_in = "c:\TEST\1.txt"
$file_out= "c:\TEST\2.txt"

$sText = StringRegExpReplace(FileRead($file_in), "(?m)^([^,\n\r]*),([^,\n\r]*),([^,\n\r]*),([^,\n\r]*)", "1 \4 \1 \3 \2")
$hFile = FileOpen($file_out,2)
FileWrite($hFile, $sText)


Space-06 26-06-2009 10:36 1152111

Я просто шокирован что все так просто может разрешится.

Спасибо большое!!!


Время: 03:41.

Время: 03:41.
© OSzone.net 2001-