PDA

Просмотр полной версии : Помогите кто может((( дублированные строки


starkey
26.05.2009, 17:58
Добрый вечер программисты Antichat'a кто может помочь, просьба откликнуться.. =((

В общем вроде это не сложно =((

Можете ли вы написать утилиты которая удаляла бы дублированные ссылки??

Пример типо:

Строка.ру
Строка2.ру
Строка.ру

Нужно чтобы эти строки Строка.ру вообще удалялись, такое возможно?? помогите плс((((

login999
26.05.2009, 19:27
#!usr/bin/env python
with open("all.txt") as input_:
with open("out.txt", "a") as out:
for x in set(input_.readlines()):
out.write(x)

Дерьмовый код, но для срочных операций сгодится
Нацарапал за 30 секунд :) Написан на Python2.6 (python.org)
Удали только ЧЕТКИЕ дубли из файла all.txt и запишет их в out.txt
Последняя строка обязательно должна быть пустой (!)

Gar|k
26.05.2009, 21:24
я помню тут выкладывал чел подобную прогу, а вообще учись пользоватся поиском любым...

http://www.softforfree.com/programs/text_duplicate_killer-11932.html

waik
26.05.2009, 21:50
скрипт с ачата:


#!/usr/bin/perl -w # Удаление повторяющихся строк
# by [dei]
############ Config #############
$file = 'log.txt';
#############################
open(F1,"< $file");
@lines = <F1>;
close F1;
for($i=0;$i<@lines;$i++) {
for($i2=$i+1;$i2<@lines;$i2++) {
f($lines[$i] eq $lines[$i2]) { splice @lines, $i2, 1;}
}
}
open(F2,"> $file");
print F2 join('',@lines);
close F2;

bons
27.05.2009, 01:39
такие утилиты уже написаны раньше
если надо оставить только одну копию из нескольких одинаковых строк, то:
sort -u file.txt
если надо удалить все копии то:
grep -vF "`sort f1.txt | uniq -d`" f1.txt