С Новым годом! Форум программистов, компьютерный форум, киберфорум
MS Office Word
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/86: Рейтинг темы: голосов - 86, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 27.11.2009
Сообщений: 11

Указатель для однокоренных слов

27.11.2009, 15:06. Показов 17024. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как сделать такой указатель, чтобы он указывал слово в именительном падеже, а ссылался на все однокоренные слова. Я так понимаю проблема в том, как отметить эти разные слова одной командой. Ну, допустим, мне не лень отметить каждое слово. Но как их потом объединить в указателе, с тем же условием отсутствия повторений номеров страниц?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.11.2009, 15:06
Ответы с готовыми решениями:

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

Функция сравнения однокоренных слов
Дан текст.как будет выглядеть функция,которая показывает, однокоренное слово или нет ?(типа bool)

Поиск однокоренных слов в тексте
Так вот... Да кста, привет :) ... в универе задали задачку уже всю голову сломал, ничего не получается :( Решил спросить у знающих :) ...

11
 Аватар для BasicMan
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
27.11.2009, 15:23
krendel34rus, а если отмечать слово без окончания?
0
0 / 0 / 0
Регистрация: 27.11.2009
Сообщений: 11
27.11.2009, 16:08  [ТС]
Word отмечает только целые слова. Как будто он ищет слово, окруженное с двух сторон пробелами. То есть даже если будут два слова через дефис, он не отметит. Может быть есть способ именно указать, что необходимо искать часть слова, то есть набор символов?

Добавлено через 20 минут
Попробовал вставить мягкий перенос (чтобы слово не разбивать), всё равно не отмечает. А если разорвать, например, пробелом, отметит. Но это ж не эстетично... И пробовал делать замену так, чтобы только пробел был 1м размером шрифта. Но размер указывается для всей строки.
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
28.11.2009, 09:31
krendel34rus,
Чтобы слова в Указателе были в Именительном падеже, надо при пометке вручную заполнять поле: Элемент указателя "основной".

Добавлено через 17 минут
Более того, надо использовать кнопку Пометить все, тогда будут помечены все одинаковые слова.

Добавлено через 51 минуту
Чтобы ускорить процесс Пометки сделайте следующее:
  1. Сервис - Настройка - Команды.
  2. Категории - Все команды.
  3. Команды - MarkIndexEntry.
  4. Щ. левой кн. мыши по MarkIndexEntry. Удерживая нажатой левую кн. мыши, перетаскиваем MarkIndexEntry на любую Панель инструментов.
  5. На Панели инструментов появилась кнопка.
  6. Конец.
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
28.11.2009, 12:03
Да, и не вставишь сюда документ, содержащий то, что тебе надо сделать, может я чего-то не догоняю.
0
0 / 0 / 0
Регистрация: 27.11.2009
Сообщений: 11
28.11.2009, 17:18  [ТС]
Busine2009,
Если поле заполнять вручную, то кнопка "Пометить все" будет не активной. Об этом также рассказывает помощник Ворда.
Мне нужно не чтобы в указателе были слова в именительном падеже, а чтобы в нем были все однокоренные слова. Промышленность: промышленное, промышленным, агропромышленный.
Например, литературная энциклопедия. Нужно сделать указатель, в котором будут ссылки на страницы с авторами: Пушкин, Пушкина, Пушкину и т.п. (конкретного документа у меня нет)

Слушайте, может быть можно объединить указатели?

Как вариант, я уже сделал, но выглядит очень коряво: Заменил все корни на эти же корни, окруженные специальным,редким символом (не важно каким). И Заменил все эти символы на пробел 1м шрифта. Пробел, конечно, не заметен, но в указателе получается кривая ссылка (например, Пушк), и пол текста подчеркнуто (типа слово пишется слитно).
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
28.11.2009, 17:27
Может чего-то не понимаю, смотри вложенный файл, так должно быть? Можешь с помощью Ctrl + Enter перенести предложения на другие страницы, чтобы увидеть, что появятся дополнительные страницы в Указателе.
Или так надо? Или как-то по-другому?
Вложения
Тип файла: doc Указатель.doc (43.5 Кб, 48 просмотров)
1
0 / 0 / 0
Регистрация: 27.11.2009
Сообщений: 11
28.11.2009, 17:32  [ТС]
Здорово! А как были сделаны эти метки? Вручную? А если у меня текста на 5мб?
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
28.11.2009, 17:56
Лучший ответ Сообщение было отмечено как решение

Решение

То есть так и должно быть? Да вручную:
вставь кнопку, как я написал в этой теме (если у тебя Word 2003). Затем выдели слово - Нажми кнопку, которую ты вставил на Панель инструментов - основной: "Вводишь слово в Именительном падеже".

Добавлено через 19 минут
krendel34rus,
Если у тебя текста на 5 МБ, то нужно придумывать Макрос, который будет
  1. находить определённое слово,
  2. помечать его,
  3. вставлять вот сюда
    Code
    1
    
    {XE " Пушкин "}
    нужное слово.
Тогда тебе надо перейти в другой раздел этого форума VBA, там тебе скорее ответят, т.к. здесь чисто Word обсуждается.
3
0 / 0 / 0
Регистрация: 27.11.2009
Сообщений: 11
28.11.2009, 17:57  [ТС]
Так должно быть - в смысле итог такой должен быть.

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

Может быть есть способ попроще? Мне, например, нужно будет сделать указатель для 100 разных фамилий. Всё-таки много получается

В любом случае, огромное спасибо за помощь! Если нет варианта проще, буду делать именно так - деваться-то некуда
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
28.11.2009, 19:12
krendel34rus,
ты просто очень сложно всё описываешь, а оказалось, что проблема совсем в другом: как автоматизировать заполнение вот этого:
Code
1
{XE " Пушкин "}
Добавлено через 1 час 10 минут
Вот код. Работает только с основным документом, т.е. Колонтитулы, Сноски, Надписи не затрагивает.
Перед применением Макроса сделайте копию документа. Указатель вставьте вручную.
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Sub Indexes()
Dim x As String
Dim y As String
Dim oWord As Range
x = InputBox("Введите корень, для отображение нужного слова в Указателе")
y = InputBox("Введите слово, которое должно быть в Указателе")
Application.ScreenUpdating = False
ActiveWindow.ActivePane.View.ShowAll = False
    For Each oWord In ActiveDocument.Words
        If InStr(oWord, x) > 0 Then
            oWord.Select
            ActiveDocument.Indexes.MarkEntry Range:=Selection.Range, Entry:=y
        End If
    Next oWord
Application.ScreenUpdating = True
End Sub
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
29.11.2009, 09:13
Вот ещё вариант. В этом варианте учитываются Сноски. А для Колонтитулов и Надписей Указатели не предусмотрены. Этот Макрос чувствителен к регистру, поэтому макрос для одного Корня должен применяться 2 раза: 1 раз вводишь корень с Большой буквы, 2 - с маленькой.
Code
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
Sub Indexes()
Dim x As String
Dim y As String
Dim oWord As Range
Dim oFootnote As Footnote
x = InputBox("Введите корень")
у = InputBox("Введите слово, которое должно быть в Указателе")
Application.ScreenUpdating = False
ActiveWindow.ActivePane.View.ShowAll = False
For Each oWord In ActiveDocument.Words
    If InStr(oWord, x) > 0 Then
        oWord.Select
        ActiveDocument.Indexes.MarkEntry Range:=Selection.Range, Entry:=у
    End If
Next oWord
For Each oFootnote In ActiveDocument.footnotes
For Each oWord In oFootnote.Range.Words
    If InStr(oWord, x) > 0 Then
        oWord.Select
        ActiveDocument.Indexes.MarkEntry Range:=Selection.Range, Entry:=у
    End If
Next oWord
Next oFootnote
Application.ScreenUpdating = True
End Sub
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.11.2009, 09:13
Помогаю со студенческими работами здесь

Поиск однокоренных слов и прочая семантика
Дали задание сделать в Web-е продвинутый поиск - чтобы и однокоренные слова искал - в других падежах, числах, склонениях, спряжениях и т.п....

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

Выделение основы слова. Стеммер Портера. Поиск однокоренных слов из файла
Добрый день нужна помощь если алгорит Стеммера Портера на поиск основы слова. Теперь необходимо сделать чтобы поиск шел по файлу: ...

Стиль для "однокоренных" виджетов без перечислений
Здравствуйте! Пишу под QT, нужна консультация по оформлению. Исходная задачка: есть много (>=200 шт.) одинаковых кнопок ()... Их...

Указатель на указатель, функции для создания новых массивов?
Всем привет! У меня в коде есть несколько новых массивов, чтобы не повторяться я создам функцию которая будет выделять память под новые...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru