Avatar billede saugmann Nybegynder
14. august 2008 - 11:35 Der er 6 kommentarer

Formatering af input string

Hejsa

jeg har en textbox som retunerer et brugerinput(vejnavn) som jeg bruger til at søge i en database i ArcGIS, problemet er at den skal bruge adressen skrevet præcis som den er i databasen. I databasen er vejene skrevet med stort begyndelses bogstav, altså Agerskellet eller Gl Hobrovej, et vejnavn skrevet ud i et har jeg styr på at få lavet til stort betyndelsesbogstav, men når vejnavnet eksempelvis er Gl Hobrovej så bliver det straks værre..

1: hvordan får jeg et input som ser ud som xx xxx xxx til at være Xx Xxx Xxx ?
eller..
2: Jeg har lavet en AutocompleteSource på textfeltet, kan jeg tvinge at texten i feltet bliver som den er i autocompletesourcen (altså samme formatering)?

På forhånd tak :-)
Avatar billede nielsenmathias Nybegynder
14. august 2008 - 11:46 #1
Hvad med at søge på eventuelle mellemrum (fx i Gl Hobrovej). Derved kan du få index på Hobrovej, og ændre det første bogstav til uppercase.
Avatar billede arne_v Ekspert
14. august 2008 - 15:12 #2
Det er jo lige ud af landevejen at kode.

En kode snippet fra lageret:

            string s1 = "aaa bbb ccc";
            string[] parts = s1.Split(" ".ToCharArray());
            string s2 = "";
            for(int i = 0; i < parts.Length; i++)
            {
                if(i > 0) {
                    s2 += " ";
                }
                s2 += parts[i].Substring(0, 1).ToUpper();
                s2 += parts[i].Substring(1).ToLower();
            }
Avatar billede kalp Novice
16. august 2008 - 00:40 #3
Er det nemmeste ikke blot, at kalde .ToLower() på begge dine strings før du sammeligner? så er alt skrevet med småt.

Jeg har ikke tænkt så meget over problemstillingen, men kan ikke umiddelbart se hvorfor det skulle være et problem hvis man gjore det på den måde.
(andet end det ser mere overskueligt ud end f.eks den kodestump for oven).
Avatar billede arne_v Ekspert
16. august 2008 - 01:18 #4
Hvis der skal sammenlignes i memory, så er det absolut nemmere.

Men skal det sendes ned til den ArcGIS database og den laver en case sensitiv sammenligning,
så ...
Avatar billede saugmann Nybegynder
17. august 2008 - 11:23 #5
Problemet er netop at Input strengen skal sammenlignes med en case sensitive streng. Jeg har ikke mulighed for at ændre i den streng der skal sammenlignes med i databasen.

Af en eller anden årsag så er en Definition Query sendt mod en Arcgis SDE database på Oracle Case sensitive.. nå men tak fo buddene jeg arbejder videre med det på mandag.
Avatar billede arne_v Ekspert
30. oktober 2008 - 02:30 #6
all set ?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester