Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Basic / VBA


Новое направление Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Basic/VBA

Выпуск № 686
от 09.01.2008, 12:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 268, Экспертов: 37
В номере:Вопросов: 1, Ответов: 3

Нам важно Ваше мнение об этой рассылке.
Оценить этот выпуск рассылки >>


Вопрос № 116842: Здравствуйте, уважаемые эксперты.Как с помощью VisualBassic (6) в тексте можно найти все неизвестные слова идущие после какого нибудь символа или слова в текстовом файле (допустим "/", "*" или "подарок="), которые могут ...

Вопрос № 116.842
Здравствуйте, уважаемые эксперты.Как с помощью VisualBassic (6) в тексте можно найти все неизвестные слова идущие после какого нибудь символа или слова в текстовом файле (допустим "/", "*" или "подарок="), которые могут содержать цифры,символы и знак "-" (допустим "кружка-12345").
При поиске информации, нашел только сравнение строк,но мне надо найти именно в предложении.Потом сохранить все найденные слова в отдельный файл.Буду рад всем советам и ссылкам.
Отправлен: 04.01.2008, 11:41
Вопрос задал: Sapozhnikov Vladimir (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 6)

Отвечает: Ualife
Здравствуйте, Sapozhnikov Vladimir!
Все это организовывается при помощи команд len и mid
len(text1) - длина строки text1
mid (text1, a, b) - получить строку размером b символов. Строка получется взятием b символов после a из строки text1.
После выполнения даной программы мы получим в text1 слово "иве"
text1="Привет"
a=2
b=3
text1=mid (text1, a, b)
Все организовывается простым сравнением при помощи команд len и mid.
---------
Нет границ - есть лишь препятствия!
Ответ отправил: Ualife (статус: 5-ый класс)
Ответ отправлен: 04.01.2008, 12:00
Оценка за ответ: 3

Отвечает: Тесленко Евгений Алексеевич
Здравствуйте, Sapozhnikov Vladimir!
Советами и ссылками не помогу, разбирайтесь сами.
С Новым годом.
Евгений.
P.S. со ссылками погарячился :)
http://ifolder.ru/4464512
http://ifolder.ru/4486094
http://ifolder.ru/4469396

Приложение:

Ответ отправил: Тесленко Евгений Алексеевич (статус: Студент)
Ответ отправлен: 04.01.2008, 14:10
Оценка за ответ: 4
Комментарий оценки:
ссылки за справочники пасиб, правда их скопилось и так многа, а толку от них ........ )))

Отвечает: Черников Игорь Владимирович
Здравствуйте, Sapozhnikov Vladimir!

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

Dim ОдинСимвол As String
Dim Предложение As String
Dim КолЗнакВПредлож As Integer
Dim Счётчик As Integer
Dim НачалоСлова As Integer
Dim КонецСлова As Integer
Dim Слово As String
Dim ВсеСлова As String

Open "c: xt.txt" For Input As #1 'путь к файлу и его имя можно указать свои
Do While Not EOF(1) ' Цикл до конца файла.
ОдинСимвол = Input(1, #1)
Предложение = Предложение + ОдинСимвол
If ОдинСимвол = "." Then ' В конце предложения обязательно должна быть точка
КолЗнакВПредлож = Len(Предложение) - 1
If КолЗнакВПредлож <> 0 Then
Do
Счётчик = Счётчик + 1
ОдинСимвол = Mid(Предложение, Счётчик, 1)
If ОдинСимвол = "" Then Exit Do
Select Case ОдинСимвол
Case "1", "2", "3", "4", "5", "6", "7", "8", "9", "0", "-", "/", "*", "=" 'Можно добавить ещё что-нибудь или убрать не нужное
НачалоСлова = Счётчик
Do 'Поиск начала слова
НачалоСлова = НачалоСлова - 1
If НачалоСлова = 0 Then
НачалоСлова = 1
Exit Do
Else
If Mid(Предложение, НачалоСлова, 1) = " " Or _
Mid(Предложение, НачалоСлова, 1) = "" Or _
Mid(Предложение, НачалоСлова, 1) = Chr(10) Or _
Mid(Предложение, НачалоСлова, 1) = Chr(13) Then
НачалоСлова = НачалоСлова + 1
Exit Do
End If
End If
Loop
КонецСлова = Счётчик
Do 'Поиск конца слова
КонецСлова = КонецСлова + 1
If Mid(Предложение, КонецСлова, 1) = " " Or _
Mid(Предложение, КонецСлова, 1) = "" Or _
Mid(Предложение, КонецСлова, 1) = "." Or _
Mid(Предложение, КонецСлова, 1) = Chr(10) Or _
Mid(Предложение, КонецСлова, 1) = Chr(13) Then
Exit Do
End If
Loop
Слово = Mid(Предложение, НачалоСлова, КонецСлова - НачалоСлова) ' само слово
If Слово <> "" And Len(Слово) > 1 Then
ВсеСлова = ВсеСлова + Слово + Chr(13) + Chr(10) 'запись найденных слов в переменную
End If
End Select
Loop
End If
Предложение = ""
Счётчик = 0
End If
Loop
Close #1
Open "c:Слова.txt" For Output As #1
Print #1, ВсеСлова 'запись найденных слов в файл
Close #1

Для Ворда это будет выглядеть совсем по другому.
---------
От каждого по способностям, каждому по труду
Ответ отправил: Черников Игорь Владимирович (статус: 9-ый класс)
Ответ отправлен: 05.01.2008, 11:50
Оценка за ответ: 5


Вы имеете возможность оценить этот выпуск рассылки.
Нам очень важно Ваше мнение!
Оценить этот выпуск рассылки >>

Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Техподдержка портала, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале
Версия системы: 4.69 от 06.01.2008
Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное