[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Удалить повторы слов в файле
seowin
Помогите, пожалуйста, написать скрипт.

Задача следующая.
Есть txt файл, в котором строки формата:

абдикация|отречение
абзац|часть|отрывок|кусок|рождать
абитуриент|ученик|институтка|академист
абонировать|нанимать|рядить
абордаж|столкновение|сцепка|свалка
абориген|житель|туземец
абортировать|рождать
абракадабра|бессмыслица|отречение|белиберда|нелепость|ахинея|нелепица|чепуха
абсолютно|полностью|вполне|бесспорно|безусловно|непременно|совершенно
абстрактный|духовный|бессмыслица|отвлеченный
абсурд|бред|бреда|вздор|абордаж

Иногда слова в пределах разных строк повторяюся.

Задача - удалить повторы слов.

Т.е. не выходе должно быть:
абдикация|отречение
абзац|часть|отрывок|кусок|рождать
абитуриент|ученик|институтка|академист
абонировать|нанимать|рядить
абордаж|столкновение|сцепка|свалка
абориген|житель|туземец
абортировать
абракадабра|бессмыслица|белиберда|нелепость|ахинея|нелепица|чепуха
абсолютно|полностью|вполне|бесспорно|безусловно|непременно|совершенно
абстрактный|духовный|отвлеченный
абсурд|бред|бреда|вздор

Ломал голову, так и не смог написать рабочий вариант скритпа.

Не доходит, как пересохранить строку в файле.

Накидал пока вот что:
<?php

$file = file('1.txt');

for($a = 0; $a < count($file); $a++) {

$file[$a] = trim($file[$a]);

$ex = explode('|', $file[$a]);

foreach($ex as $val) {

for($i = 0; $i < count($ex); $i++) {

for($j = $a + 1; $j < count($file); $j++) {
if(strpos($file[$j], $ex[$i])) {
str_replace($ex[$i], "", $file[$j]) . "<br/>";
}
}

}

}


?>
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.