ssf logo blue Rötter - din källa för släktforskning driven av Sveriges Släktforskarförbund
ssf logo blue Rötter - din källa för släktforskning
Anbytarforum

Innehållet i inläggen på Anbytarforum omfattas inte av utgivningsbeviset för rotter.se

Författare Ämne: Sökningar med "konstiga" tecken (läs svenska bokstäver) fungerar inte  (läst 774 gånger)

2024-05-19, 14:44
läst 774 gånger

Utloggad Staffan Bergh

  • Anbytare *****
  • Antal inlägg: 3042
  • Senast inloggad: 2024-12-19, 07:32
  • aka festerman
    • Visa profil
    • BFiles
Sökfunktionen (den inbyggda) fungerar inte med svenska tecken.

Prova till exempel med "Täll", ett ord/namn som finns i 5 trådar enligt Google -- sök med sökfrasen
Kodstycke: [Välj]
"Täll" site:forum.rotter.se
De första två träffarna (i en lista med 1000 ...) är på poster med ord som innehåller "täll" -- men det är ett villospår: även poster med bara "T" och/eller "ll" kommer med, se träff #3 (i min sökning: https://forum.rotter.se/index.php?topic=198908.msg1676379#msg1676379).
mvh /staffan -- BFiles

2024-05-19, 20:00
Svar #1

Utloggad Paul Bergström

  • Anbytare *****
  • Antal inlägg: 1554
  • Senast inloggad: 2024-10-03, 15:04
    • Visa profil
Tja, fungerar inte är kanske inte rätt uttryckt.

Den är konfigurerad med annan funktion än Google är nog bättre beskrivet.

Den söker motsvarande (definierad som Unix/Linux grep) "grep -i *whatever*"

Det betyder att sökningen matchar vad du än skriver case insensitive d.v.s. Täll kommer matcha alla varianter - Täll, tÄLL, täll, täLL mm. Den kommer också matcha del av sträng, så Täll kan förekommas eller efterföljas av godtyckligt tecken. Därför matchar t.ex. föreställning.

Du kan t.ex. testa att söka på "Tall". Du kommer även där få väldigt många fler träffar än du förväntar dig.

Sedan kan man förstås diskutera om denna typ av matchning är önskvärt. Det kan ju vara så att man sett i äldre text en del stumma bostäver t.ex. hvad eller Hannah och bestämt sig för att matcha del av sträng alltid.

/Paul


2024-05-20, 20:56
Svar #2

Utloggad Staffan Bergh

  • Anbytare *****
  • Antal inlägg: 3042
  • Senast inloggad: 2024-12-19, 07:32
  • aka festerman
    • Visa profil
    • BFiles
Linux-kommandot "grep *whatever*" matchar  "*whatever" (med den första asterisken, men utan den avslutande); den avslutande asterisken säger att ordet kan avslutas med valfritt antal "r", alltså även "*whateve", med noll "r", eller "*whateverrrrrrrrr" -- men en inledande asterisk måste matcha explicit. "-i" säger att det är skiftläges-okänsligt i de alfabetiska tecknen. Jag tror mönstret du tänker på är "t.ll" -- "t", följt av valfritt tecken, följt av två "l". Men det är inte det heller ...

Om du kollar mitt exempel (länkat i posten) finns inget i post-texten som matchar det (det finns några "till" i omgivande boilerplate).

Jag misstänker att sökningen och/eller indexeringen ignorerar konstiga tecken, möjligen indexerande de två delarna som separata ord: prova att gå till Avancerad sökning, skriv söktexten "tä" "ll" (med citat-tecken och mellanslag mellan) och välj matcha alla ord. Resultatet innehåller ungefär samma träffar (och mer än 1000 träffar) trots att varken ordet "tä" eller ordet "ll" borde vara särskilt vanliga, och kombinationen ännu mer ovanlig. Men det verkar som matchningen i det fallet bara är på "ll". Däremot tar den efterföljande html-uppmärkningsprocessen höjd för hela orden. Men det är ganska trixigt att konstruera tester som dissekerar de olika delarna i funktionen -- om jag hade tid och lust skulle jag installera en testversion och läsa koden. Men eftersom google-sökningen funkar bra nog, så får det vara ...
mvh /staffan -- BFiles

2024-05-21, 08:07
Svar #3

Utloggad Staffan Bergh

  • Anbytare *****
  • Antal inlägg: 3042
  • Senast inloggad: 2024-12-19, 07:32
  • aka festerman
    • Visa profil
    • BFiles
Hjärnan tar ju inte ledigt ... under gårdagens kvälls-hundpromenad kom den på ett bra exempel, trots att jag sa att jag skulle lämna ämnet ;)

Alla exempel körda i lilla sökrutan på framsidan (den med ett grönt förstoringsglas på).

Strängen "majorsbost" (utan citat-tecken) ger 17 träffar. Sökningen "majorsboställe" ger 11 träffar -- de som innehåller båda de två orden "majorsbost" och "lle". Om man istället söker på "ajorsboställe" (utan inledande "M") får man inga träffar (ingen post innehåller både "ajorsbost" och "lle"). Söker man med bara "lle" så får man mer än 1000 träffar.

Besläktade ordet "översteboställe" ger 17 träffar; ta bort "älle" på slutet, och det är 29 träffar. Ta bort "Ö" i början och man får lika många: det är "verstebost" som är ordet vi sökt med. Ta bort "t" i slutet, och vi får inga träffar -- sökningen görs inte med trunkering (den söker inte på början av ord, alltså). Sätt dit andra konstiga tecken -- "#verstebost#lle" ("#" i stället för "ö" resp "ä") och vi är tillbaks till de 17 träffarna, men nu presenteras resultatet utan uppmärkning, eftersom ingen av posterna innehåller exakt den strängen.

Slutsats: enkla sökningen på framsidan söker på hela ord, på alla ord, och utan trunkering -- men den byter innan sökningen "konstiga" tecken mot mellanslag, och bland konstiga tecken ingår svenska bokstäverna å, ä och ö. Uppmärkningen (markeringen av "träffarna") är en separat process som händer efter sökningen är klar.
mvh /staffan -- BFiles

Innehållet i inläggen på Anbytarforum omfattas inte av utgivningsbeviset för rotter.se