|
4 / 4 / 0
Регистрация: 11.10.2014
Сообщений: 108
|
|
Как правильно сделать автозамену слов24.02.2016, 02:15. Показов 1623. Ответов 8
Метки нет (Все метки)
Здравствуйте!
У меня есть набор предложений. Например, Маша ела кашу и суп. Я хочу сделать возможным следующее, записать предложение в виде: Маша 11 243 и 243 Тогда программа дойдя до 11 и 243 обратилась бы либо к базе данных, либо к списку слов в xml (нет представления, как лучше), а там было бы 11 ела кушала лопала 243 кашу гречку суп котлету рис И было выбрано по одному слову из каждого списка, т.е. "Маша лопала суп и котлету" или "Маша ела котлету и рис". На чем это было правильно сделать и как? Планируется, что это будет сайт, нужна скорость работы. Задача вроде бы простая, но как минимум нужно исключить повторяемость еще, а то может получится "Маша ела кашу и кашу".
0
|
|
| 24.02.2016, 02:15 | |
|
Ответы с готовыми решениями:
8
Как сделать автозамену в ворде? Как сделать автозамену блоков? Как сделать постоянную автозамену текста в файле? |
|
Модератор
3135 / 2282 / 469
Регистрация: 26.03.2015
Сообщений: 8,884
|
||||||
| 25.02.2016, 09:44 | ||||||
|
Слова храните в БД.
Для выборки двух случайных слов из таблицы:
1
|
||||||
|
Заблокирован
|
|
| 26.02.2016, 17:22 | |
|
Если у вас слов не слишком много, то можно задать
строковый массив. Ваша программа будет генерировать случайные числа (индексы массива) и если эти числа не равны, то они и будут определять слова, которые попадут в текст...
1
|
|
|
4 / 4 / 0
Регистрация: 11.10.2014
Сообщений: 108
|
|
| 01.03.2016, 10:54 [ТС] | |
|
Коллеги, спасибо, но в общем-то выборку я сама сделаю, тем более, как вижу, у вас MS SQL в запросе, а у меня MySQL. Каюсь, не сказала сразу, что это уже подготовлено.
Главная проблема не в этом, а самом скрипте для веба: у mysql не очень хорошие отношения с выборкой произвольного количества слов по random, это раз и что совсем плохо, нет ясности, как же все-таки избавиться от одинаковых слов в случае, если из таблицы для 243 в предложении Маша 11 243 и 243 выбрано селектом по рендому одно и то же слово. Алгоритм хочется очень. То ли отбирать во временную таблицу все слова и добавлять условие: not in (select ...), то ли отдать это вообще на откуп прикладному приложению, не базе данных, может, оно и быстрей будет в смысле выборки. Добавлено через 18 минут Т.е. база получается крайне маленькая, мегабайта не будет. Если дать приложению считать это все в оперативную и дальше уже подставлять в ней же, может, будет получше, чем с базой, так думается. Может, питон какой-то или что-то еще в этом роде. А может, найдется еще и человек, который такое напишет мне под веб, я бы даже заплатила без проблем.
0
|
|
|
Модератор
3135 / 2282 / 469
Регистрация: 26.03.2015
Сообщений: 8,884
|
||||||||
| 01.03.2016, 15:44 | ||||||||
|
и вместо "top 2" в начале - "LIMIT 2" в конце Добавлено через 1 час 35 минут
1
|
||||||||
|
4 / 4 / 0
Регистрация: 11.10.2014
Сообщений: 108
|
|
| 02.03.2016, 13:46 [ТС] | |
|
Shamil1,
Спасибо, но все же ни один из вариантов, по-моему, не решает основную проблему: запрет на дублировать слова. Т.е. если будет предложение: "Маша 11 243 и 243, после чего еще решила 11 243, 243, 243 и еще 243", то слова из группы 243 повторяться не должны. В каждой группе достаточное количество слов, от 20 и более, но предложения могут быть сложносочиненные и сложноподчиненные.
0
|
|
|
Модератор
3135 / 2282 / 469
Регистрация: 26.03.2015
Сообщений: 8,884
|
||
| 02.03.2016, 15:49 | ||
Сообщение было отмечено ElenaTomsk как решение
РешениеПрограмме всё равно, какие у Вас предложения. Для неё это набор символов. В пределах одного вызова Replace() слова повторяться не будут. Если слов не хватит, то программа бросит исключение. Если Вам хочется глобально исключить повторения, то перенесите подсчёт слов (словарь wordsCounts) на уровень класса.
1
|
||
|
4 / 4 / 0
Регистрация: 11.10.2014
Сообщений: 108
|
||||||
| 07.03.2016, 08:15 [ТС] | ||||||
|
Не работает это правильно в MySQL.
0
|
||||||
|
Модератор
3135 / 2282 / 469
Регистрация: 26.03.2015
Сообщений: 8,884
|
|
| 07.03.2016, 13:30 | |
|
Это потому что UUID() в MySQL возвращает одно и то же значение для всех строк. Замените на RAND().
1
|
|
| 07.03.2016, 13:30 | |
|
Помогаю со студенческими работами здесь
9
Как по умолчанию убить автозамену? Как делать автозамену в готовом документе? Как реализовать автозамену смайликов на картинки Как правильно дублировать в actionscript 2.0 и как правильно сделать объект для дублирования
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|