Окна обработки текста без дополнительного программного обеспечения?

#windows #text-processing #text-parsing

#Windows #обработка текста #синтаксический анализ текста

Вопрос:

У меня есть эти машины, которые выводят много данных. К сожалению, выводимые файлы структурированы странным образом. Я хотел бы иметь возможность выполнять некоторую сложную обработку текста (в стиле perl), чтобы анализировать данные и иметь возможность выводить в формат Excel. Я также хотел бы автоматизировать это, но единственный сервер, который я могу использовать, работает под управлением Windows XP (с Office), и мне не разрешено устанавливать какое-либо постороннее программное обеспечение (никаких .NET, Powershell, ActivePerl и т.д.) Каков наилучший способ сделать это? Достаточно ли мощны регулярные выражения в VB / VBA, чтобы я мог создавать сценарии в Excel?

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

1. Если вы скомпилируете программу на каком-либо языке в автономный exe-файл, сможете ли вы запустить ее на компьютере? Кроме того, помните, что регулярное выражение — не единственное решение. Если это действительно сложно, то, возможно, стоит попробовать определить грамматику и использовать программу, подобную yacc, для создания синтаксического анализатора.

2. @Mat Да, я могу запустить исполняемый файл. Я взгляну на синтаксические анализаторы грамматики, но мне все равно понадобится способ импорта в Excel.

3. @Mat И файлы на самом деле не слишком сложны. Они в значительной степени представляют собой набор многострочных записей, разделенных пробелами, вот почему я намеревался использовать perl / regex.

Ответ №1:

Я бы рекомендовал использовать что-то вроде AutoIt. Он имеет встроенный движок регулярных выражений и включает стандарт Excel. Он может компилироваться в автономный exe-файл, так что вполне подходит. Это также довольно просто, как язык, поэтому не должно занять много времени, чтобы разобраться, что происходит с другими языками.

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

1. @Mat Неважно, я не думаю, что это сработает. Я почти уверен, что не могу каким-либо образом взаимодействовать с графическим интерфейсом.

2. @Mat, я только что узнал о Strawberry Perl Portable. Я мог бы попробовать.

3. @Bat Мастерсон, что заставляет вас думать, что вам нужно взаимодействовать с графическим интерфейсом? Это не то, что делает AutoIt. Я бы прочитал немного больше и посмотрел на некоторые примеры файлов.

4. AutoIt — отличный язык для этого. Он может выполнять регулярные выражения и имеет отличную библиотеку для работы с Excel. Это также не требует установки для работы и не зависит от каких-либо огромных фреймворков, таких как .NET. AutoIt, кстати, является языком общего назначения, а не чисто языком автоматизации графического интерфейса пользователя, хотя в этом он превосходен.

5. @Manadar, спасибо! Можно ли запускать сценарии AutoIt без установки AutoIt? РЕДАКТИРОВАТЬ: Неважно, нашел это autoitscript.com/autoit3/docs/intro/compiler.htm