Я использую Perl-скрипт с открытым исходным кодом для создания текстового корпуса на основе англоязычного дампа Википедии. Простой текст был извлечен, но все еще необходимо удалить различные знаки препинания и тому подобное. Однако выходные данные этого сценария по существу создают текстовый файл 7,2 ГБ, содержащий одну строку. Из-за моих потребностей я хочу изменить скрипт так, чтобы он вставлял символ новой строки каждые 20 слов.
Пока я пробовал это:
$wordCount=0;
while (<STDIN>) {
$wordCount++;
//text processing regex commands here
# Remove ellipses
s/\.\.\./ /g;
# Remove dashes surrounded by spaces (e.g. phrase - phrase)
s/\s-+\s/ /g;
# Remove dashes between words with no spaces (e.g. word--word)
s/([A-Za-z0-9])\-\-([A-Za-z0-9])/$1 $2/g;
# Remove dash at a word end (e.g. three- to five-year)
s/(\w)-\s/$1 /g;
# Remove some punctuation
s/([\"\�,;:%�?�!()\[\]{}<>_\.])/ /g;
# Remove trailing space
s/ $//;
# Remove double single-quotes
s/'' / /g;
s/ ''/ /g;
# Replace accented e with normal e for consistency with the CMU pronunciation dictionary
s/�/e/g;
# Remove single quotes used as quotation marks (e.g. some 'phrase in quotes')
s/\s'([\w\s]+[\w])'\s/ $1 /g;
# Remove double spaces
s/ / /g;
chomp($_);
if ($wordCount == 20){
print uc($_) . "\n";
$wordCount=0;
}
print uc($_) . " ";
}
print "\n";
Однако, похоже, это не сработает, поскольку необработанный вывод содержит только новые строки, произвольно разбросанные вокруг. Я хотел бы отформатировать текст, чтобы он помещался на обычном мониторе шириной 1200 пикселей без переноса слов.
Пример ввода текста из файла
Краткий Оксфордский Словарь Политики. Сторонники анархизма
(известные как "анархисты") защищают общества без гражданства как единственную моральную
форма социальной организации. Есть много типов и традиций
анархизм, не все из которых являются взаимоисключающими. Анархизм как
Общественное движение регулярно терпело колебания популярности.
Термин анархизм происходит от греческого ἄναρχος, анархос, что означает
«без правителей», его использование в качестве синонима все еще распространено за пределами
Соединенные Штаты. Самые ранние анархистские темы можно найти в 6-м
до н.э. среди произведений даосского философа Лаоцзы, а в более поздних
веками Чжуанцзы и Бао Цзинъяня. Термин «анархист» первый
вошел в английский язык в 1642 году, во время гражданской войны в Англии, а
термин злоупотребления, используемый роялистами против своих противников.
Ко времени Французской революции некоторые, такие как Enragés, начали
использовать термин позитивно, в отличие от якобинской централизации
власти, рассматривая "революционное правительство" как оксюморонное. Посредством
На рубеже 19-го века английское слово «анархизм» утратило свою
первоначальный негативный оттенок. Современный анархизм возник из светского
или религиозная мысль о Просвещении, особенно Жан-Жак
Аргументы Руссо о моральной важности свободы. Анархизм",
Encarta Online Encyclopedia 2006 (версия для Великобритании). Из этого климата
Уильям Годвин разработал то, что многие считают первым выражением
современная анархистская мысль. Годвин был, по словам Петра Кропоткина,
«первым сформулировать политические и экономические концепции
анархизм, хотя он не дал это имя идее
разработал в своей работе ", в то время как Годвин приложил свои анархистские идеи к
ранний Эдмунд Берк. Анархо-коммунист Джозеф Дежак был
первый человек, который назвал себя «либертарианцем». В отличие от Прудона, он
утверждал, что "это не продукт его или ее труда, что
работник имеет право, но на удовлетворение своих потребностей,
какой бы ни была их природа. Иисус иногда считается первым
анархист в христианской анархистской традиции. Жорж Лечартье
писал, что «Истинным основателем анархии был Иисус Христос и
В Европе жесткая реакция последовала за революциями 1848 года, во время которых
десять стран испытали краткие или долгосрочные социальные потрясения, как
группы проводили националистические восстания. После большинства из них
попытки систематических изменений закончились неудачей, консервативные элементы
воспользовались разделенными группами социалистов, анархистов,
либералы и националисты, чтобы предотвратить дальнейшее восстание. бланкисты,
Филадельфии, английские профсоюзные деятели, социалисты и социальные
демократы. Благодаря своим связям с активными рабочими движениями,
Международная стала важной организацией. Карл Маркс стал
ведущая фигура в Интернационале и член ее общего
Совет. Последователи Прудона, мутуалисты, выступили против государства Маркса
социализм, выступающий за политический абсентизм и мелкую собственность
холдинги. В 1868 году, после их неудачного участия в
Лига мира и свободы (ФНЧ), русский революционер Михаил
Бакунини его коллективистская анархистская ассоциация присоединилась к Первому Интернационалу (который решил не связываться с ФНБ).Сначала коллективисты работали с марксистами, чтобы подтолкнуть Первый Интернационал в более революционное социалистическое русло.Впоследствии Интернационал стал поляризованным на два лагеря с Марксом и Бакуниным в качестве их соответствующих подставных лиц.В 1872 году конфликт завершился окончательным расколом между двумя группами на Гаагском конгрессе, где Бакунин и Джеймс Гийом были исключены из Интернационала, а его штаб-квартира была переведена в Нью-Йорк.В ответ федеральные секции сформировали свой собственный Интернационал на Конгрессе Сент-Имье, приняв революционную анархистскую программу.Black Rose Books 2005) ISBN 1-55164-251-4.
В файле есть текст на 7 с лишним гигабайт.Поэтому использование списка или другой структуры данных может быть немного излишним для этих требований.
Что необходимо для того, чтобы соответствовать моим требованиям?