eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programming › Pisownia slow do wyszukiwarki dla normalnego usera
Ilość wypowiedzi w tym wątku: 7

  • 1. Data: 2011-05-17 08:28:09
    Temat: Pisownia slow do wyszukiwarki dla normalnego usera
    Od: Jacek Czerwinski <...@...z.pl>

    Jak by normalnego człowieka na dziś poprosić o pisanie wzorców słów do
    wyszukiwania?

    a) chyba nie należny go kłopotać małymi/wielki tylko to zrobić za niego?

    b) Za czasów DOS statystyczny Kowalski siedzący przed komputerem znał
    gwiazdkę i wtedy
    Lubl* -> w silniku SQL bym szukał upper(ff) like LUBL%
    *lubl* -> %LUBL%

    lublin -> dokładnie LUBLIN ale nie Lubliniec (bez wildcardsów). Szukanie
    dokładne jest jednym z wymagań.

    pytanie mam, czy gwiazdka ma jeszcze jakiekolwiek znaczenie przy
    statystycznym konsumencie Youtuba?

    c) wzorzec na jedną literkę odpuszczamy (DOS-owski ? lub regularny .
    obojętne)

    d) cytowanie (escape) stringów backslashami czy w inny sposób (szukanie
    gwiazdki: \* ) zakładam jest nie do zrozumienia dla statystycznego
    człowieka.

    e) jak w/w dałbym domyślne szukanie dokładne. Ale nie mam pewności, może
    to przerost programisty, być może domyślne dać 'like' a przy specjalnej
    pisowni dokładne, a jeśli tak to w jakiej pisowni?




  • 2. Data: 2011-05-17 08:50:56
    Temat: Re: Pisownia slow do wyszukiwarki dla normalnego usera
    Od: wloochacz <w...@n...gmail.spameromnie.com>

    W dniu 2011-05-17 10:28, Jacek Czerwinski pisze:
    > Jak by normalnego człowieka na dziś poprosić o pisanie wzorców słów do
    > wyszukiwania?
    Nie tędy droga - imo.
    Normalny człowiek chce wpisać coś i dostać to, czego oczekuje.
    No google takie - jeden Edit i jeden button (drugi niepotrzebny i
    praktycznie w ogóle nieużywany, a pozostał chyba tylko w celach
    sentymentalnych...) - w sumie to i ten button teraz niepotrzebny, bo
    teraz się szuka samo - w trakcie pisania...

    Problemy są dwa; po pierwsze takie wyszukiwanie daje wyniki przybliżone,
    ale co ciekawe w 90% przypadków to wystarcza.
    Po drugie - żeby robić to efektywnie, to trzeba mieć efektywny silnik FTS.

    > a) chyba nie należny go kłopotać małymi/wielki tylko to zrobić za niego?
    A to w ogóle odpada - komu potrzebna jest taka opcja "rozróżniaj
    wielkość znaków"? Dla liczb/dat nie ma to znaczenia, dla tekstu -
    powinno być wyszukiwanie przybliżone...

    > b) Za czasów DOS statystyczny Kowalski siedzący przed komputerem znał
    > gwiazdkę i wtedy
    > Lubl* -> w silniku SQL bym szukał upper(ff) like LUBL%
    > *lubl* -> %LUBL%
    > lublin -> dokładnie LUBLIN ale nie Lubliniec (bez wildcardsów). Szukanie
    > dokładne jest jednym z wymagań.
    >
    > pytanie mam, czy gwiazdka ma jeszcze jakiekolwiek znaczenie przy
    > statystycznym konsumencie Youtuba?
    No - dalej znają :)
    To działa, nawet na takim allegro imo, ma znaczenie.

    > c) wzorzec na jedną literkę odpuszczamy (DOS-owski ? lub regularny .
    > obojętne)
    IMO - bez znaczenia, ja pomijam całkowicie.

    > d) cytowanie (escape) stringów backslashami czy w inny sposób (szukanie
    > gwiazdki: \* ) zakładam jest nie do zrozumienia dla statystycznego
    > człowieka.
    To musi być obsłużone, ale i tak będzie wykorzystywane w promilu
    przypadków. Gorzej jak będzie taka potrzeba a tego opcja wyszukiwania
    nie dopuści - imo powinno być, zwłaszcza że to banalne do zakodowania.

    > e) jak w/w dałbym domyślne szukanie dokładne.
    Zdecydowanie - nie.
    Wyszukiwanie domyślne to takie jak w google.

    > Ale nie mam pewności, może
    > to przerost programisty, być może domyślne dać 'like' a przy specjalnej
    > pisowni dokładne, a jeśli tak to w jakiej pisowni?
    No więc właśnie - domyślne to powinno być wyszukiwanie w oparciu o FTS
    :) Dopiero jak to wyszukiwanie nie spełni oczekiwań użytkownika, to
    wejdzie sobie w tryb "zaawansowany" i, być może, nawet dokumentację
    przeczyta...

    --
    wloochacz


  • 3. Data: 2011-05-17 09:20:13
    Temat: Re: Pisownia slow do wyszukiwarki dla normalnego usera
    Od: Jacek Czerwinski <...@...z.pl>

    W dniu 2011-05-17 10:50, wloochacz pisze:
    > W dniu 2011-05-17 10:28, Jacek Czerwinski pisze:
    >> Jak by normalnego człowieka na dziś poprosić o pisanie wzorców słów do
    >> wyszukiwania?
    > Nie tędy droga - imo.
    > Normalny człowiek chce wpisać coś i dostać to, czego oczekuje.
    > No google takie - jeden Edit i jeden button (drugi niepotrzebny i
    > praktycznie w ogóle nieużywany, a pozostał chyba tylko w celach
    > sentymentalnych...) - w sumie to i ten button teraz niepotrzebny, bo
    > teraz się szuka samo - w trakcie pisania...

    u mnie na focusLost(), ale o to samo chodzi. Podczas pisania (on Change)
    zbyt obciążało, focus wystarcza.

    >>
    >> pytanie mam, czy gwiazdka ma jeszcze jakiekolwiek znaczenie przy
    >> statystycznym konsumencie Youtuba?
    > No - dalej znają :)
    > To działa, nawet na takim allegro imo, ma znaczenie.

    Aha, czyli można się odnosić.
    > No więc właśnie - domyślne to powinno być wyszukiwanie w oparciu o FTS
    > :) Dopiero jak to wyszukiwanie nie spełni oczekiwań użytkownika, to
    > wejdzie sobie w tryb "zaawansowany" i, być może, nawet dokumentację
    > przeczyta...

    Silnika FTS na dziś nie będę dodawał, ale jest jakby co bardzo dobry
    (koleżanka 'Lucynka' - Lucene).
    Mam "preprocesor" do kwerend gdzie tego LIKE zakłada na każdym polu o
    cechach tekstowych z tej tabeli i o jeden JOIN. Dośc to ludziom się
    podoba, nie szuka dat i kwot.

    Oświeciło mnie: standardowo dam LIKE ale jak zacznie od '=' to dokładne.
    Psychologicznie trzyma się kupy?


  • 4. Data: 2011-05-17 09:34:41
    Temat: Re: Pisownia slow do wyszukiwarki dla normalnego usera
    Od: wloochacz <w...@n...gmail.spameromnie.com>

    W dniu 2011-05-17 11:20, Jacek Czerwinski pisze:
    /ciach/

    > Silnika FTS na dziś nie będę dodawał, ale jest jakby co bardzo dobry
    > (koleżanka 'Lucynka' - Lucene).
    > Mam "preprocesor" do kwerend gdzie tego LIKE zakłada na każdym polu o
    > cechach tekstowych z tej tabeli i o jeden JOIN.
    Nie rozumiem tego zdania do końca - o co chodzi z tym "i o jeden JOIN"?

    > Dośc to ludziom się
    > podoba, nie szuka dat i kwot.
    A ja szukam dat i kwot, ale nie z like (się by dało, ale...) tylko z <,
    !, >, .. - zobacz niżej.

    > Oświeciło mnie: standardowo dam LIKE ale jak zacznie od '=' to dokładne.
    > Psychologicznie trzyma się kupy?
    >
    Trzyma się, a osobiście poszedłem ciut dalej i, co tu dużo kryć,
    zerznąłem Axaptę, która ma tak:

    <cytat>
    Składnia
    Opis charakterystyki
    Opis
    Przykład

    Wartość
    Równe wprowadzonej wartości.
    Wpisz wartość, którą chcesz znaleźć.
    Wyrażenie Nowak pozwala wyszukać wartość ,,Nowak".

    !wartość

    (wykrzyknik)
    Różne od wprowadzonej wartości.
    Wpisz wykrzyknik przed wartością, którą chcesz wykluczyć.
    Wyrażenie !Nowak pozwala wyszukać wszystkie wartości z wyjątkiem ,,Nowak".

    Od..Do

    (dwie kropki)
    Między wprowadzonymi wartościami, rozdzielonymi dwoma kropkami.
    Wpisz wartość Od, a po niej dwie kropki i wartość Do.
    Wyrażenie 1..10 pozwala wyszukać wszystkie wartości od 1 do 10.

    Niemniej jednak, w polu tekstowym wyrażenie A..C pozwala wyszukać
    wszystkie wartości rozpoczynające się od ,,A" i ,,B" oraz dokładnie równe
    ,,C" (na przykład wartość ,,Ca" nie zostanie znaleziona).

    Aby wyszukać wszystkie wartości od ,,A*" do ,,C*" włącznie, wpisz A..D.

    ..wartość

    (dwie kropki)
    Mniejsze lub równe wprowadzonej wartości.
    Wpisz dwie kropki, a następnie wartość.
    Wyrażenie ..1000 pozwala wyszukać wszystkie liczby mniejsze lub równe
    1000, na przykład ,,100", ,,999,95" i ,,1 000".

    wartość..

    (dwie kropki)
    Większe lub równe wprowadzonej wartości.
    Wpisz wartość, a następnie dwie kropki.
    Wyrażenie 1000.. pozwala wyszukać wszystkie liczby większe lub równe
    1000, na przykład ,,1 000", ,,1 000,01" i ,,1 000 000".

    >wartość

    (znak większości)
    Większe od wprowadzonej wartości.
    Wpisz znak ,,większe", a następnie wartość.
    Wyrażenie >1000 pozwala wyszukać wszystkie liczby większe od 1000, na
    przykład ,,1000,01", ,,20 000" i ,,1 000 000".

    <wartość

    (znak mniejszości)
    Mniejsze od wprowadzonej wartości.
    Wpisz znak ,,mniejsze", a następnie wartość.
    Wyrażenie <1000 pozwala wyszukać wszystkie liczby mniejsze od 1000, na
    przykład ,,999,99", ,,1" i ,,-200".

    wartość*

    (gwiazdka)
    Zaczynające się wprowadzoną wartością.
    Wpisz wartość początkową, a następnie gwiazdkę.
    Wyrażenie S* pozwala wyszukać wszystkie ciągi znaków zaczynające
    literą S, jak ,,Sztokholm", ,,Sydney" i ,,San Francisco".

    *wartość

    (gwiazdka)
    Kończące się wprowadzoną wartością.
    Wpisz gwiazdkę, a następnie wartość końcową.
    Wyrażenie *chód pozwala wyszukać wszystkie ciągi znaków kończące się
    literami ,,chód", jak ,,Wschód" i ,,Zachód".

    *wartość*

    (gwiazdka)
    Zawierające wprowadzoną wartość.
    Wpisz gwiazdkę, a po niej wartość i kolejną gwiazdkę.
    Wyrażenie *sch* pozwala wyszukać wszystkie ciągi znaków zawierające
    litery ,,sch", jak ,,Wschód" i ,,Zachód".

    ?

    (pytajnik)
    Posiadające co najmniej jeden nieznany znak.
    Wpisz wartość z pytajnikiem w z miejscu nieznanego znaku lub znaków.
    Wyrażenie Now?k pozwala wyszukać ,,Nowak" i ,,Nowik"

    wartość,wartość

    (przecinek)
    Zgodne z wprowadzonymi wartościami, rozdzielonymi przecinkami.
    Wpisz wszystkie kryteria, rozdzielając je przecinkami.
    Wyrażenie A, D, F, G pozwala wyszukać dokładnie ,,A", ,,D", ,,F" i ,,G".

    Wyrażenie 10, 20, 30, 100 pozwala wyszukać dokładnie ,,10, 20, 30, 100".

    (Instrukcja SQL)

    (instrukcja SQL w nawiasach okrągłych)
    Zgodne ze wskazaną kwerendą.
    Wpisz kwerendę jako instrukcję SQL w nawiasach okrągłych.
    (data source.Fieldname != "A")
    </cytat>

    I to jak dla mnie wyczerpuje temat wyszukiwania, zwłaszcza że nie trzeba
    tworzyć wymuskanych UI do tworzenia filtrów (aczkolwiek i takie mam, ale
    to inna bajka) i naprawdę załatwia temat w 100% jeśli idzie o proste
    wyszukiwanie w danych tabelarycznych...

    --
    wloochacz


  • 5. Data: 2011-05-17 09:52:59
    Temat: Re: Pisownia slow do wyszukiwarki dla normalnego usera
    Od: Jacek Czerwinski <...@...z.pl>

    W dniu 2011-05-17 11:34, wloochacz pisze:
    > W dniu 2011-05-17 11:20, Jacek Czerwinski pisze:
    > /ciach/
    >
    >> Silnika FTS na dziś nie będę dodawał, ale jest jakby co bardzo dobry
    >> (koleżanka 'Lucynka' - Lucene).
    >> Mam "preprocesor" do kwerend gdzie tego LIKE zakłada na każdym polu o
    >> cechach tekstowych z tej tabeli i o jeden JOIN.
    > Nie rozumiem tego zdania do końca - o co chodzi z tym "i o jeden JOIN"?

    W widocznych kolumnach tabeli przywołanej 'from' oraz o jedno piętro
    głębokości w tabelach z JOIN-ów (tzn o dwa piętra już nie).

    Dokładnie to nie parsuję kwerend ze stringa na logikę, tylko je buduję z
    pewnego rodzaju informacji.

    >
    >> Dośc to ludziom się
    >> podoba, nie szuka dat i kwot.
    > A ja szukam dat i kwot, ale nie z like (się by dało, ale...) tylko z <,
    > !, >, .. - zobacz niżej.
    >
    >> Oświeciło mnie: standardowo dam LIKE ale jak zacznie od '=' to dokładne.
    >> Psychologicznie trzyma się kupy?
    >>
    > Trzyma się, a osobiście poszedłem ciut dalej i, co tu dużo kryć,
    > zerznąłem Axaptę, która ma tak:
    Nie znałem, fajne chyba, to jakaś przyjęta (wśród userów) konwencja?

    Ale dzięki, coś zobaczyłem, skoro dodałem '=' (który mi przypadkowo już
    działa przynajmniej na integerach i przy odrobinie szczęścia na kwotach)
    to w przysżłości '<' też może być...


  • 6. Data: 2011-05-18 11:16:35
    Temat: Re: Pisownia slow do wyszukiwarki dla normalnego usera
    Od: "Wojciech \"Spook\" Sura" <wojciech.sura_no@spam_poczta.medi.com.pl>

    Dnia 17-05-2011 o 10:28:09 Jacek Czerwinski <...@...z.pl> napisał(a):
    (...)

    Wydaje mi się, że standardem powinno być wyszukiwanie wyrażeń explicite,
    czyli:

    "Lublin"

    Wówczas można wyszukać:

    "Lublin*"

    Gdzie * oznacza znak, nie wildcard.

    Wymagałbym jeszcze wymuszania i negowania wyszukiwanych elementów:

    +Lublin -miasto

    do wyszukania samochodów ciężarowych.

    Zauważyłem, że te trzy reguły funkcjonują w bardzo wielu miejscach.

    Idąc dalej: OR, AND, NOT, ale te są chyba rzadko wykorzystywane.

    Pozdrawiam -- Spook.


    --
    Używam klienta poczty Opera Mail: http://www.opera.com/mail/


  • 7. Data: 2011-05-18 12:19:52
    Temat: Re: Pisownia slow do wyszukiwarki dla normalnego usera
    Od: wloochacz <w...@n...gmail.spameromnie.com>

    W dniu 2011-05-18 13:16, Wojciech "Spook" Sura pisze:
    > Dnia 17-05-2011 o 10:28:09 Jacek Czerwinski <...@...z.pl> napisał(a):
    > (...)
    >
    > Wydaje mi się, że standardem powinno być wyszukiwanie wyrażeń explicite,
    Masz rację - wydaje Ci się ;-)

    > czyli:
    >
    > "Lublin"
    >
    > Wówczas można wyszukać:
    >
    > "Lublin*"
    >
    > Gdzie * oznacza znak, nie wildcard.
    >
    > Wymagałbym jeszcze wymuszania i negowania wyszukiwanych elementów:
    Uuuu...
    I dla kogo jest to oprogramowanie - dla Ciebie?
    Bo na pewno nie dla użytkownika...

    > +Lublin -miasto
    > do wyszukania samochodów ciężarowych.
    A to "miasto" to czym ma być?
    Wskazaniem, że nie ma szukać miast - czyli co?
    Ma nie szukać wartości w konkretnym atrybucie (kolumna tabeli)?

    > Zauważyłem, że te trzy reguły funkcjonują w bardzo wielu miejscach.
    W jakich miejscach?
    W wyszukiwarkach opartych na FTSach - jak najbardziej.

    > Idąc dalej: OR, AND, NOT, ale te są chyba rzadko wykorzystywane.
    Dokładnie - odwrotnie.
    Są bardzo często wykorzystywane, ale niejawnie ;-)

    --
    wloochacz

strony : [ 1 ]


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: