Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » Парсер по документу WORD

Ответить
Настройки темы
Парсер по документу WORD

Аватара для Frost_Imp

Пользователь


Сообщения: 53
Благодарности: 0

Профиль | Отправить PM | Цитировать


Всем доброго времени суток!
Очередной вопрос от лентяя
Есть у меня документ Word. Необходимо:
1. Найти в нем определенный текст
2. Скопировать в буфер (или присвоить значение переменной) текста, который находится правее найденного (до конца строки).
Одна из проблем в том, что документ изначально не doc, а rtf. Имеет это принципиальное значение или нет? Ведь в конечном итоге открывается документ Вордом.
Вторая проблемка... Есть, конечно, UDF-ка для Ворда, но для меня, убогого, там слишком сложно. Вот я и думаю, может есть у кого-нибудь что-нибудб более менее рабочее?

Отправлено: 15:14, 25-09-2009

 

Аватара для Stomper

Новый участник


Сообщения: 3
Благодарности: 2

Профиль | Отправить PM | Цитировать


Парсит файл c:\123.rtf и выводит номера телефонов, расположеные после кодового слова "Телефон:"
Код: Выделить весь код
#include <Word.au3>
$tel_digs = "0123456789()-+ "
$srch_phrs= "Телефон:"
$sSourceFile = "c:\123.rtf"
$oWord       = _WordCreate($sSourceFile, 0, 0)
$oDoc        = _WordDocGetCollection($oWord, 0)
$strs=$oDoc.Range.Text
_WordQuit($oWord, 0)
While StringInStr($strs,$srch_phrs)<>0 
  $n1=StringInStr($strs,$srch_phrs)
  $n1=$n1+StringLen($srch_phrs)
  $n2=$n1
  While StringInStr($tel_digs,StringMid($strs,$n2,1))<>0
    $n2=$n2+1
  WEnd
  $OutStr=StringMid($strs,$n1,$n2-$n1)
  MsgBox(0,"",$OutStr)
  $strs=StringTrimLeft($strs,$n2)
Wend
Exit(0)
Это сообщение посчитали полезным следующие участники:

Отправлено: 16:26, 25-09-2009 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Sp01LeR

Пользователь


Сообщения: 60
Благодарности: 13

Профиль | Отправить PM | Цитировать


Я думаю что для лучшей совместимости форматов вместо
Код: Выделить весь код
_WordCreate($sSourceFile, 0, 0)
лучше открыть документ:
Код: Выделить весь код
[...]
$sSourceFile = "c:\123.rtf"
$oWord = _WordCreate("")
$oDoc = _WordDocOpen ($oWord, $sSourceFile)
[...]

Отправлено: 13:30, 30-09-2009 | #3


Аватара для Frost_Imp

Пользователь


Сообщения: 53
Благодарности: 0

Профиль | Отправить PM | Цитировать


Благодарю, код Stomper-а работает. Очень помогло!
Единственное - можно ли доработать код дляя поиска по нескольким ключевым словам?

Отправлено: 15:55, 30-09-2009 | #4


Аватара для Sp01LeR

Пользователь


Сообщения: 60
Благодарности: 13

Профиль | Отправить PM | Цитировать


Цитата Frost_Imp:
по нескольким ключевым словам? »
По каким - тем что слева или справа?
Можно поподробней пожалуйста(и желательно с примерами)...

Отправлено: 19:30, 30-09-2009 | #5


Новый участник


Сообщения: 1
Благодарности: 0

Профиль | Отправить PM | Цитировать


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

подскажите как изменить скрипт Stomper'a, чтобы после заданного ключевого слова данные записывались в столбец таблицы

заранее благодарен

Отправлено: 17:47, 03-08-2011 | #6



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » Парсер по документу WORD

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] Парсер IP из текста morgan1991 AutoIt 5 24-01-2010 21:56
Word и закладки SlavaS AutoIt 2 05-06-2009 17:40
Поиск слов не по документу, а по документам :) Sev Хочу все знать 4 26-01-2009 12:41
Word H3rcul3s Хочу все знать 1 12-06-2004 23:53
MS Word 2000 obllook Хочу все знать 2 05-05-2003 16:18




 
Переход