Удаление строчек содержащие анг буквы.

Тема в разделе "Мелочи", создана пользователем Anton, 1 июн 2009.

Статус темы:
Закрыта.
  1. Anton

    Anton ¯\_(ツ)_/¯

    Moderator
    Регистр.:
    28 авг 2007
    Сообщения:
    654
    Симпатии:
    642
    После парсинга вордстата или после выборки с пастуховской ру базы, попадаются мусорные запросы типа:
    тралала phpbb
    тралала vbulletin
    тралала yabb и тд.

    Удаляем все это простым скриптегом

    PHP:
    <?php 

    $array 
    file('key.txt'); $file fopen('result.txt''w'); foreach ($array as $string) { if (!preg_match('%[a-z]+%'$string)) { fwrite($file$string); } } fclose($file);
    ?> 
    Спасибо человеку что помог со скриптом сегодня в чате, правда забыл его ник)))
     
    fastik, d00r_ и Алкаш нравится это.
  2. PocketDevil

    PocketDevil Постоялец

    Регистр.:
    26 янв 2008
    Сообщения:
    92
    Симпатии:
    160
    Можно так же юзать TextPipe Pro, там подобные задачи решаются в пару кликов. А для фильтрации кеев ему вообще замены нет.
    :ay:
     
  3. Dimid

    Dimid Постоялец

    Регистр.:
    21 июн 2007
    Сообщения:
    79
    Симпатии:
    27
    для этих целей удобней пользовать програмку keywordkeeper. в качестве параметров указываем буквы англ алфавита :)
     
  4. alex-bot

    alex-bot Nulled-Man

    Регистр.:
    4 май 2007
    Сообщения:
    498
    Симпатии:
    144
    А можете подсказать как сделать это же, но только не для кеев, а для всего текста? Т.е. нужна регулярка которая бы проверила каждое слово, если в нем есть английские буквы удалить, иначе оставить.
    2PocketDevil Если знаешь как это сделать на TextPipe буду оч. признателен за помощь. Там вообще темный лес, как я не пытался разобраться в регулярке...
     
  5. Alix

    Alix

    Регистр.:
    27 янв 2008
    Сообщения:
    234
    Симпатии:
    84
    Код навскидку. Текст разбивается по пробелам, знаки пунктуации "лепятся" к словам, что в принципе не мешает проверке и помогает избежать проблем со склеиванием обратно. Минус, который следует из-за такого подхода: если слово внутри текста содержит англ букву и при этом после него стоит знак препинания, то слово будет удалено вместе со знаком. Особенно критично, имхо, когда англ символ попадется в слове, которое стоит последним в предложении.
    PHP:
    <?
        
    $text file_get_contents("text.txt");
        
    $words explode(" "$text);
        
    $file fopen("result.txt""w+");
        foreach (
    $words as $word) {
            if (!
    preg_match('%[a-z]+%'$word)) {
                
    fwrite($file$word." ");
            }
        }
        
    fclose($file);
    ?>
     
    alex-bot нравится это.
  6. ikolibri

    ikolibri

    Регистр.:
    3 ноя 2008
    Сообщения:
    205
    Симпатии:
    14
    можете выбрать search and replace -> указать список англ букв и заменить их на пустой символ (стереть)
     
Статус темы:
Закрыта.