|
Полнотекстовый поиск и буква "Ё"
|
|||
---|---|---|---|
#18+
Полнотекстовый поиск различает букву Ё, например слова "Ёж" и "Еж" нерелевантны. Используем самую простую тупую стандартную конфигурацию для русского языка. Вопрос: Как сделать так чтобы постгрес не различал буквы "е" и "ё"? Наверняка ж кто-то делал... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2009, 11:40 |
|
Полнотекстовый поиск и буква "Ё"
|
|||
---|---|---|---|
#18+
Рекомендуется подготавливать текст перед индексацией (т.е. сохранением в базу) специальной функцией, которая, среди прочего, заменяет "ё" на "е". ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2009, 12:08 |
|
Полнотекстовый поиск и буква "Ё"
|
|||
---|---|---|---|
#18+
Ну, вообще "тупо" заменять "ё" на "е" — это не совсем корректно. "Осел" — "осёл", "все" — "всё" и т.д. Буква "ё" как раз и употребляется тогда, когда могут быть разночтения. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2009, 13:02 |
|
Полнотекстовый поиск и буква "Ё"
|
|||
---|---|---|---|
#18+
izРекомендуется подготавливать текст перед индексацией (т.е. сохранением в базу) специальной функцией, которая, среди прочего, заменяет "ё" на "е". В принципе, вариант. У меня есть специальное индексное поле (все по тьютору :)), можно при его обновлении от ё избавляться и в запросах тоже. Я просто подумал, мож у кого есть конфигурация, которая работает с "Ё". [quot]Ну, вообще "тупо" заменять "ё" на "е" — это не совсем корректно. "Осел" — "осёл", "все" — "всё" и т.д. Буква "ё" как раз и употребляется тогда, когда могут быть разночтения.[/quot] Значит надо заменять умно, меня "Ёжики" беспокоят, собсно на "Ёжиках" мы и заметили. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2009, 13:39 |
|
Полнотекстовый поиск и буква "Ё"
|
|||
---|---|---|---|
#18+
DAISERНу, вообще "тупо" заменять "ё" на "е" — это не совсем корректно. "Осел" — "осёл", "все" — "всё" и т.д. Буква "ё" как раз и употребляется тогда, когда могут быть разночтения. А если так: перед поиском изменять условия: если есть слова с "ё", искать оба варианта: вместо "ёжики" искать ("ёжики" or "ежики") ... |
|||
:
Нравится:
Не нравится:
|
|||
14.01.2009, 12:46 |
|
Полнотекстовый поиск и буква "Ё"
|
|||
---|---|---|---|
#18+
Я подозреваю, что самым корректным будет замена "ё" на "е" перед индексированием текста. И тоже самое в запросе. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2009, 10:08 |
|
Полнотекстовый поиск и буква "Ё"
|
|||
---|---|---|---|
#18+
А главное замена "ё" на "е" сократит размер индекса. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2009, 10:08 |
|
Полнотекстовый поиск и буква "Ё"
|
|||
---|---|---|---|
#18+
Самоловских Виталий aka Kefir пишет: > Вопрос: Как сделать так чтобы постгрес не различал буквы "е" и "ё"? Т.е. перефразируя можно сказать: "Как мне сделать самому себе плохо ?" Почему, интересно, вы не хотите, чтобы постгрес не различал А и Я ? Они гораздо ближе друг к другу, чем "е" и "ё". Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2009, 10:25 |
|
Полнотекстовый поиск и буква "Ё"
|
|||
---|---|---|---|
#18+
авторЯ подозреваю, что самым корректным будет замена "ё" на "е" перед индексированием текста.Это зависит от того что Вы делаете, что у Вас за система, как и для чего она используется, как и для чего используется в ней поиск. Вообще - это самое НЕ корректное, что можно придумать, это приведёт к ложным результатам поиска и подходит только если Вы и Ваши пользователи готовы с этим мириться (с лишними результатами в поиске). по правилам, в обычном печатном тексте писать Ё не обязательно, поэтому для корректной поддержки Ё Вам нужно сделать две вещи: 1. Словарь всех слов и обработку словоформ с буквой Ё, что бы можно было добавлять альтернативы в поисковый запрос (Ёжики or Ежики) 2. Искусственный интеллект, который будет понимать смысл фразы перед индексированием (см примеры DAISER ) типа: "Этот человек - осел, причём давно." Ваш ИИ должен разобраться что тут имелось ввиду, Осёл, дурак или Осел, сидит и соответственно - нужно ли эту фразу выдавать в результате поиска по Осёл или по Осел. Дополнительно к ИИ Вам нужен телепатический интерфейс с пользователем, что бы он мог понять, какое слово имел ввиду пользователь вводя при поиске например "Осел", он опустил тут точки над Ё или же имел ввиду "сел". Это вариант А. Есть ещё другой вариант, Б - "9 июля 2007 года российский министр культуры А. С. Соколов в интервью радиостанции «Маяк» высказался за использование буквы «ё» в письменной речи" я лично полностью согласен с министром :) тогда ваши Ежики - это просто неправильно написанное слово, с орфографической ошибкой. Тогда Ваша проблема превращается в проблему поиска неправильно написанных слов, для её решения можно попробовать использовать модуль триграмм. он позволяет искать "похожие" слова с использованием индекса (правда пока он не работает для кодировки utf-8) -- „Истина — это вовсе не то, что можно убедительно доказать, это то, что делает всё проще и понятнее“ — Антуан де Сент-Экзюпери ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2009, 14:52 |
|
Полнотекстовый поиск и буква "Ё"
|
|||
---|---|---|---|
#18+
Ёш пишет: > по правилам, в обычном печатном тексте писать Ё не обязательно, поэтому > для корректной поддержки Ё Вам нужно сделать две вещи: Это где вы такие правила нашли ? Это в сов. время экономили на шрифтах, лишнюю букву чтобы не отливать, вот и пошла мода. Но сейчас другие технологии, другие подходы, и сейчас на Ё экономить смысла нет. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2009, 17:32 |
|
Полнотекстовый поиск и буква "Ё"
|
|||
---|---|---|---|
#18+
MasterZivЭто где вы такие правила нашли ?незнаю, где-то слышал %) да и в википедии написано что "не обязательна". ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2009, 17:52 |
|
Полнотекстовый поиск и буква "Ё"
|
|||
---|---|---|---|
#18+
Ёш пишет: > незнаю, где-то слышал %) да и в википедии написано что "не обязательна". Википедия - надпись на заборе. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2009, 10:07 |
|
Полнотекстовый поиск и буква "Ё"
|
|||
---|---|---|---|
#18+
http://gramota.ru/spravka/buro/search_answer/?s=%E1%F3%EA%E2%E0+%A8 http://www.gramota.ru/biblio/magazines/nauka_i_zhizn/28_618 http://otvety.google.ru/otvety/thread?tid=101fba0d6b6bd702 http://www.stihi.ru/2007/06/01-360 авторIV. Буква Ё § 10. Буква ё пишется в следующих случаях: 1. Когда необходимо предупредить неверное чтение и понимание слова, например: узнаём в отличие от узнаем; всё в отличие от все; вёдро в отличие от ведро; совершённый (причастие) в отличие от совершенный (прилагательное). 2. Когда надо указать произношение малоизвестного слова, например: река Олёкма. 3. В cпециальных текстах: букварях, школьных учебниках русского языкa, учебниках орфоэпии и т. п., а также в словарях для указания места ударения и правильного произношения. Примечание. В иноязычных словах в начале слов и после гласных вместо буквы ё пишется йо, например: йод, йот, район, майор.это цитата из "Правила русской орфографии и пунктуации" от 1956 года, которые действуют и сейчас. то есть - Ё обязательно пишется только в перечисленных выше случаях, правильно ? не может же быть что gramota.ru это тоже "надпись на заборе."... всё указывает на то что они цитируют официальные правила и ими руководствуются. в том числе - совпадение данных из разных источников (gramota stihi google). Дополнительно к этому минобразования приняло пояснение в 2007 году: авторМИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ (Минобрнауки России) ул. Тверская, д.11, г. Москва, ГСП-3, 125993 Тел.: 629-70-62, факс: 629-08-91 E-mail: info@mon.gov.ru 03 мая 2007 г. № АФ-159/03 Рассылается в: Федеральные органы исполнительной власти (по списку) Администрации субъектов Российской Федерации О решениях Межведомственной комиссии по русскому языку В соответствии с решениями Межведомственной комиссии по русскому языку, принятыми на выездном заседании в г. Иваново (протокол от 13 апреля 2007 г. № 6), направляю рекомендации по употреблению при написании имён собственных буквы ё. . . . Около 3 % граждан Российской Федерации имеют фамилии, имена или отчества, в которых содержится буква Ё, и нередко запись в паспорте оказывается искажённой. Причиной этого является несоблюдение установленного утверждёнными в 1956 году Правилами русской орфографии и пунктуации требования обязательно использовать букву Ё в случаях, когда возможно неправильное прочтение слова. Имена собственные (фамилии, имена, отчества, географические названия, названия организаций и предприятий) как раз и относятся к этому случаю. Поэтому применение буквы Ё в именах собственных должно быть бесспорным и обязательным. . . . то есть только про имена собственные, про обязательное употребление Ё в остальных случаях там не написано - соответственно остаётся как было с 1956 года, только три пункта где Ё пишется. ps: я лично во избежании проблем стараюсь использовать Ё во всех базах везде и всегда, но текущие правила языка, насколько я понимаю вышеизложенное, этого к сожалению не требуют... а есть ещё например КЛАДР, где есть улицы "Молодёжная" и "Молодежная"... хотя... базу данных наверное можно подвести под пункт 1 (Когда необходимо предупредить неверное чтение и понимание слова), типа "компьютер же может неправильно понять слово, поэтому при общении с ним следует писать везде Ё" или словарь слов для поиска - под пункт 3 (В cпециальных текстах ... в словарях ...). MasterZiv , Вы это имели ввиду ? -- „Истина — это вовсе не то, что можно убедительно доказать, это то, что делает всё проще и понятнее“ — Антуан де Сент-Экзюпери ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2009, 11:43 |
|
Полнотекстовый поиск и буква "Ё"
|
|||
---|---|---|---|
#18+
Ёш пишет: > следует писать везде Ё" или словарь слов для поиска - под пункт 3 (В > cпециальных текстах ... в словарях ...). *MasterZiv*, Вы это имели ввиду ? Да я вообще имею в виду, что в базе данных (да и вообще везде сейчас) нет смысла не писать букву Ё. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2009, 13:54 |
|
Полнотекстовый поиск и буква "Ё"
|
|||
---|---|---|---|
#18+
Извините за некропост, но проблема та же. Красивого решения не нашёл. COLLATE это умеет? Где описано? Хотелось бы делать полнотекстовый поиск не различая Е и Ё. А ещё может JOIN с тем же свойством. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.04.2014, 07:34 |
|
Полнотекстовый поиск и буква "Ё"
|
|||
---|---|---|---|
#18+
Weed, есть такое: ... |
|||
:
Нравится:
Не нравится:
|
|||
13.05.2014, 20:00 |
|
Полнотекстовый поиск и буква "Ё"
|
|||
---|---|---|---|
#18+
rostyaИзвиняюсь, http://www.postgresql.org/docs/9.1/static/unaccent.html Спасибо, очень пригодится нам вскорости! ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2014, 11:23 |
|
|
start [/forum/topic.php?fid=53&msg=38614950&tid=1995695]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
35ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
others: | 290ms |
total: | 420ms |
0 / 0 |