-
AutoIt
(
http://forum.oszone.net/forumdisplay.php?f=103)
Обрезать строку до указанного символа
Имеется файл вида:
61.172.246.180:80
61.172.249.94:80
61.172.249.96:80
62.233.138.180:3128
66.98.212.79:8888
Хотелось бы получить 2 файла
Первый:
61.172.246.180
61.172.249.94
61.172.249.96
62.233.138.180
66.98.212.79
Второй:
80
80
80
3128
8888
То есть необходима функция обрезающая строку до указанного символа ":" с левой стороны затем с правой..
Буду рад любой помощи..
|
мммм, вставить в эксель и сделать "текст по столбцам" =)
Руками или средствами AutoIt - дело вкуса)
|
Цитата:
Цитата rimm
необходима функция обрезающая строку до указанного символа ":" с левой стороны затем с правой »
|
Причём у каждой строки, вот пример с использованием StringRegExp:
Код:
$sInFile = @ScriptDir & "\File.txt"
$sOutFile_IPs = @ScriptDir & "\IPs.txt"
$sOutFile_Ports = @ScriptDir & "\Ports.txt"
$sReadFile = FileRead($sInFile)
$aRet = StringRegExp($sReadFile, '((?:[0-9]{1,3}\.?){4}):([0-9]{1,4})', 3)
$sOutFile_IPs_Content = ""
$sOutFile_Ports_Content = ""
For $i = 0 To UBound($aRet)-1
If Mod($i, 2) = 0 Then ;Чётное число (или 0), пишем IP'шки
$sOutFile_IPs_Content &= $aRet[$i] & @CRLF
Else ;Иначе пишем порты
$sOutFile_Ports_Content &= $aRet[$i] & @CRLF
EndIf
Next
$hFile = FileOpen($sOutFile_IPs, 2)
FileWrite($hFile, $sOutFile_IPs_Content)
FileClose($hFile)
$hFile = FileOpen($sOutFile_Ports, 2)
FileWrite($hFile, $sOutFile_Ports_Content)
FileClose($hFile)
Цитата:
Цитата Frost_Imp
вставить в эксель и сделать "текст по столбцам" »
|
Такие советы лучше не озвучивать, они бессмыслены.
|
Думаю, из файла сами считаете... так же как и положите. Или посмотрите примеры. Берем адрес и порт из строки таким образом:
Код:
$s="61.172.246.180:80"
$pos=StringInStr($s,":")
MsgBox(0,"",StringLeft($s,$pos-1));
MsgBox(0,"",StringMid($s,$pos+1,StringLen($s)-$pos))
|
ну или
Код:
$aLine = StringSplit($sLine, ':')
$sIP = $aLine[1]
$sPort = $aLine[2]
|
kaster, оу :) Признаю, у вас красивее :)
|
Время: 23:57.
© OSzone.net 2001-