Удаление одинаковых строк из документа при парсинге

Тема в разделе "Шаблон вывода", создана пользователем ferum, 25 ноя 2014.

  1. ferum

    ferum New Member Пользователи

    Регистрация:
    25 ноя 2014
    Сообщения:
    2
    Здравствуйте, подскажите как при парсинге удалять одинаковые строки в пределах одного документа. Может есть готовое решение?
    Я в php не силён, но вот нашёл скрипт удаления одинаковых строк из файла:
    Код:
    <?php  
    $arr1= file ('mix.txt');
    $result = array_unique($arr1);
    for ($i=0; $i<count($result); $i++)
    {$text .= $result[$i] ;}
    file_put_contents(mix.txt, '');
    $out=fopen('mix.txt','w');
    fwrite($out,"$text");
    fclose($out);
    ?>
    попытался переделать вот так:

    Код:
    <?php  
    $arr1 = array($_POST["data"]);
    $result = array_unique($arr1);
    for ($i=0; $i<count($result); $i++)
    {$text .= $result[$i] ;}
    echo $text;
    ?>
    т.е. вместо текста из файла, подставляется $_POST["data"] из CD, но почему-то на выходе, в CD, тот же самый не обработанный текст, то есть с повторами.

    Сам шаблон вывода:
    Код:
    <PHP_SCRIPT=http://testphp.my/test.php[UTF-8]>data=[DATAENCODE]<CD_CYCLE_GRAN_ALL!>[/DATAENCODE]</PHP_SCRIPT>
    где <CD_CYCLE_GRAN_ALL!> - список предложений получаемый при парсинге и некоторые из них повторяются, например:

    а мне надо на выходе так:

     
  2. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Здравствуйте.

    Давно есть готовый макрос:
    С уважением к вам, Сергей...
     
  3. ferum

    ferum New Member Пользователи

    Регистрация:
    25 ноя 2014
    Сообщения:
    2
    Спасибо большое, это то что надо :yes:
     
  4. elnur

    elnur New Member Пользователи

    Регистрация:
    25 ноя 2014
    Сообщения:
    3
    Я правильно понимаю что этот макрос надо вводить в редактор шаблона вывода? То будет примерно так [DELDUP({br})]<CD_GRAN_1!>;<CD_GRAN_2!>[/DELDUP] или я ошибаюсь?
     
  5. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Если у вас строки с дублями содержатся в <CD_GRAN_1!>, то так:
    Это же очевидно! =)
     
  6. elnur

    elnur New Member Пользователи

    Регистрация:
    25 ноя 2014
    Сообщения:
    3
    У меня почему-то при такой схеме макрос в документ тоже попадает и выглядит вот так: [DELDUP({br})]GA-110-1AER[/DELDUP]
     
  7. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Какая у вас версия программы? (меню - справка - о программе)
     
  8. elnur

    elnur New Member Пользователи

    Регистрация:
    25 ноя 2014
    Сообщения:
    3
    Версия 2.79
     

    Вложения:

  9. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Обновитесь до последней версии и макрос заработает. На форуме стоит предупреждение, что ведется поддержка только последних версий программы, прошу не пренебрегать этим.
     
  10. kagorec

    kagorec Администратор Команда форума Администратор

    Регистрация:
    3 янв 2011
    Сообщения:
    4.431
    Адрес:
    Latvia
    DUPIGNORE - Также обратите внимание на макрос проверки дублей для всех страниц которые будет парсить.
     
  11. Serheo

    Serheo Well-Known Member Пользователи

    Регистрация:
    13 окт 2018
    Сообщения:
    251
    Город:
    Москва
    Подскажите, пожалуйста, где в CD найти описание макроса [DELDUP]? Весь CD перерыл и что-то не наткнулся.
     
  12. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Что именно вам непонятно из краткого описания работы этого макроса в дереве макросов шаблона вывода?
     
  13. Serheo

    Serheo Well-Known Member Пользователи

    Регистрация:
    13 окт 2018
    Сообщения:
    251
    Город:
    Москва
    Вот в том-то и дело, что я не могу его найти в этом самом дереве. Все глаза сломал. Ткните носом, плиз.
     
  14. inotoxic

    inotoxic Well-Known Member Пользователи

    Регистрация:
    13 сен 2015
    Сообщения:
    867
    [​IMG]
     
    Root нравится это.
  15. Serheo

    Serheo Well-Known Member Пользователи

    Регистрация:
    13 окт 2018
    Сообщения:
    251
    Город:
    Москва
    Спасибо! А то реально глаза сломал. То, что там еще и поиск есть тоже увидел. :)
     
    Root нравится это.

Поделиться этой страницей