Страница 3 из 4

Re: Задача..

СообщениеДобавлено: 03 фев 2010, 20:57
Alexsandrit
а что такое ;pm ?

Re: Задача..

СообщениеДобавлено: 03 фев 2010, 20:59
DPX-Infinity
вот ещё вариант:
cat file | cut -d';' --output-delimiter=';' -f1,2 > file2

Re: Задача..

СообщениеДобавлено: 03 фев 2010, 20:59
DPX-Infinity
Alexsandrit писал(а):а что такое ;pm ?

где?

Re: Задача..

СообщениеДобавлено: 03 фев 2010, 21:00
Zver
вот вариант с записью обратно в файл...
Код: Выделить всёРазвернуть

<?php
function ICQfilter($file){
    
$text file_get_contents($file);
    
$text explode("\n"$text);
    
    for(
$i=0$i<count($text); $i++){
        
$text[$i] = explode(";"$text[$i]);
        
$ret .= $text[$i][0].";";
        
$ret .= $text[$i][1]."\n
"
;
    }
    
    return 
$ret;
}
$file "test.txt";
$content ICQfilter($file);
$f fopen($file"w");
fwrite($f$content);
?>

Re: Задача..

СообщениеДобавлено: 03 фев 2010, 21:04
Alexsandrit
icq;pass;pm :Search:

Re: Задача..

СообщениеДобавлено: 03 фев 2010, 21:06
Zver
да ну забей :D
я сначала подумал что это файл брута...
ЗЫ: возможно это майл, или что-то в этом роде..

Re: Задача..

СообщениеДобавлено: 03 фев 2010, 21:11
DPX-Infinity
хех. тогда уж вот:
Код: Выделить всёРазвернуть
import System.Environment
main = getArgs >>= \(f1:f2:_) -> readFile f1 >>= return . unlines . f . lines >>= writeFile f2

f :: String -> String
f = reverse .tail . snd. span (/=';') . reverse

Re: Задача..

СообщениеДобавлено: 03 фев 2010, 21:12
Conteo
Вы тут все с дуба рухнули штоле? о_О

Re: Задача..

СообщениеДобавлено: 03 фев 2010, 21:14
Zver
У мну идея :D
Давайте устроим форум во флудилке - даётся какая-то задаяа, и любым языком програмирования нужно её реализовать :D
Укого меньше кода получится - тот и создаёт новое задание, и так по цепочке...

Re: Задача..

СообщениеДобавлено: 03 фев 2010, 21:24
DPX-Infinity
вот ещё:
Код: Выделить всёРазвернуть
import Data.list
import Text.ParserCombinators.Parsec
import System.IO

main = do
    (f1,f2:_) <- getArgs
    readFile f1 >>= return . unlines . f . lines >>= writeFile f2
    where
        f s = case parse fieldParser f1 s of
            Left e -> error $ show e
            Right lst = intercalate ";" $ take 2 lst

fieldParser :: Parser [String]
fieldParser = sepBy1 (char ';') (many $ noneOf ";")