Cleaner text — чистим файлы с текстом

Cleaner text

На этот раз написал скрипт на PHP для очистки файлов с текстом. Он немного похож на скрипт для очистки ключевых слов. Код ниже:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?php
###############################################################
#
#	Cleaner text by beerhack from http://beerhack.name
#	ICQ: 274717
#
###############################################################

ini_set('memory_limit', '512M'); //чем больше текстовый файл, тем больше памяти понадобится
$filename = 'text.txt'; //имя текстового файла, файл должен быть в папке со скриптом
$lang = 'ru'; //допустимые буквы: ru - русские; en - английские ; ruen - русские и английские
$sym = '.-!,?'; //допустимые символы
 
/* настройки выше, ниже ничего не трогать */
 
$f = fopen($filename, 'r');
$contents = fread($f, filesize($filename));
fclose($f);
for($i=0;$i<strlen($sym);$i++){
	$sympattern .= '\\'.$sym[$i];
	if($i<strlen($sym)-1) {
		$orsympattern .= '\\'.$sym[$i].'|';
	} else {
		$orsympattern .= '\\'.$sym[$i];
	}
}
if($lang=='en'){
	$pattern = "/[^a-zA-Z0-9 $sympattern]+/";
}elseif($lang=='ru'){
	$pattern = "/[^а-яА-Я0-9 $sympattern]+/";
}elseif($lang=='ruen'){
	$pattern = "/[^a-zA-Zа-яА-Я0-9 $sympattern]+/";
}
$contents = preg_replace(array('/[\t]/','/[\r]/','/[\n]/','/[\v]/'), ' ', $contents); //заменяем символы табуляции, переноса строки на пробел
$contents = preg_replace($pattern, '', $contents); //удаляем все лишние символы
$contents = preg_replace("/($orsympattern)[\s$orsympattern]*($orsympattern)/", "\$1", $contents); // удаляем идущие подряд допустимые символы
$contents = preg_replace('/[\s]*(\.|\,)/', "\$1", $contents); //удаляем пробелы перед знаками препинания
$contents = preg_replace('/[ ]{2,}/', ' ', $contents); //удаляем повторные пробелы
$f = fopen('clean-'.$filename, 'w'); //итоговый файл будет с приставкой 'clean-'
fwrite($f, $contents);
fclose($f);
?>

Либо качаем скрипт отсюда – Cleaner text. Пароль к файлу: beerhack.name

В настройках задаём имя текстового файла, язык, допустимые символы и, если потребуется, увеличиваем лимит памяти.

В итоге создастся текстовый файл с очищенным текстом с приставкой clean-.

Теперь можно спокойно пихать этот файл с чистым текстом в любой дорген. Дорвеи на таком тексте будут любимчиками поисковых систем.

03.08.2012
Метки:

Комментарии:

  1. Ты прям вовремя, а то я десктопную чистилку не могу найти аналогичную на своём харде %)

    Ответить
  2. «качаем скрипт отсюда – Cleaner text. »
    beerhack, отдает 404 ошибку. Исправьте, плиз.

    Ответить
  3. Zver, ой, исправил.

    Ответить
  4. Бирхак (автор), ого, спасиб!

    Ответить
  5. Символ ‘ё’ обрабатывается?

    я использую вместо /[^a-zA-Zа-яА-Я0-9 $sympattern]+/

    /[^а-яё0-9\x{3040}-\x{9FBF}\/\w+\s]+/

    Ответить
  6. Bloodyc, не счел его плохим символом, не обрабатывается.

    Ответить