Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.08;
Скачать: [xml.tar.bz2];




Вниз

анализ строки 


kalinka   (2002-03-25 12:03) [0]

Может у кого есть уже готовое:

Надо анализировать строку и если в ней встречается цвет ("черный", "чёрный", "белая" и т.д.), то выхватывать его. Вся проблема в том, что их (цветов) очень много, вот я и понадеялась, что кто-нибудь это уже делал... :)



deleon   (2002-03-25 12:10) [1]

Kalinka, это очень прикольно (за чем это?) :)))



-=CrazyFish=-   (2002-03-25 12:11) [2]

выхватывать это как? Если нужно анализировать присутствие в строке определенных слов, то могу посоветовать воспользоваться функциями из модуля strutils.pas из из RX Library.



kalinka   (2002-03-25 12:18) [3]

для deleon: ну, есть длинное название чего-либо, в котором есть что-нибудь вроде "маркер зеленый для пластиковой доски", а склад хочет, чтобы было написано по отдельности. "маркер для пластиковой доски" и "ЗЕЛЕНЫЙ". База данных большая, добавлять поле и перебивать информацию не хочется. Вот и мучают :(

для CrazyFish: именно это и нужно (анализировать присутствие в строке определенных слов). Сейчас посмотрю, спасибо



deleon   (2002-03-25 12:34) [4]

Kalinka - лучший и самый быстрый модуль для работы со строками QStrings.pas!!! Но как назло сейчас мой http-сервер не работает, поэтому попробуй поискать в нете. Через некоторое время его можно будет найти здесь(например завтра):
http://www.dbwork.kuban.ru/download/qstrings.zip



kalinka   (2002-03-25 12:35) [5]

для deleon: большое спасибо, поищу :)



Andrey007   (2002-03-25 13:05) [6]

А функция Pos(Substr: string; S: string): Integer не подойдёт?



kalinka   (2002-03-25 13:14) [7]

Andrey007: в принципе, можно, конечно, попробовать, типа, если Pos("зеленый", "маркер зеленый для пластиковой доски")<>0 , то все круто... и т.д. Короче, я запуталась, буду думать дальше. Всем огромное спасибо за помощь.



Андрей Сенченко   (2002-03-25 13:25) [8]

А чего тут путаться ?
1. Таки добавляешь поле "цвет" в базу.
// Поверь мне - потом проще будет.
2. Составляешь табличку ( хоть в файле, хоть прямо в PAS-е) корней слов, означающих цвета ( "зелен", "красн", "черн", "фиолетов" ) - вариантов не так и много.
3. В цикле ищешь вхождение этих корней по POS()
// Здесь еще можно поставить проверочку - если поле "цвет заполнено - не обрабатываем.
4. Цепляешь слово начиная с этого POS до следующего пробела.
5. Пишешь результат в новое поле "цвет"
6. Запускаешь на ночь и на следующее утро склад имеет полное удовлетворение.

// Вообще-то кладовцы - это такие хитрые гады ... Как только сделаешь это - сразу захотят разделять еще "для пластиковой доски" "для деревянной доски" "для писания на стульях" "для рисования на морде" ...
Проходили ... - им только покажи, что можно. :)



kalinka   (2002-03-25 13:36) [9]

Мы подумали, и я решила :) что будем добавлять поле.
А кладовцы - они именно такие. Не пройдет и первое впечатление от поля "цвет", как что-нить да придумают. Эх...



deleon   (2002-03-25 14:03) [10]

Мочить их надо прямо на складе :)))



Anatoly Podgoretsky   (2002-03-25 21:02) [11]

Андрей Сенченко © (25.03.02 13:25)
Зеленщик?



Фэ   (2002-03-25 23:22) [12]

Согласен с Сенченко.
Не вздумай им показывать все услышанные и увиденные возможности.
Только то, в чем уже разобралась и можешь сделать или сделала.
Да еще поторгуйся. Вот тогда оценят.
Если не уволят.



kalinka   (2002-03-26 09:57) [13]

Фэ, Спасибо за дельный совет :)))




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.08;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.74 MB
Время: 0.027 c
3-22541           MVVD                  2002-03-14 10:04  2002.04.08  
Быстрота поиска


1-22655           DikobraZ              2002-03-26 12:00  2002.04.08  
User32.dll:SetLayeredWindowAttributes.


1-22613           LiNkS                 2002-03-27 16:06  2002.04.08  
StringReplace


3-22536           Kikoz                 2002-03-14 12:18  2002.04.08  
Как подключиться к АССЕSS через компонент TDataBase не регистрируюя алиас в BDE?


3-22593           Alexandr              2002-03-18 10:49  2002.04.08  
Дастать данные из Access