Avatar billede pdj Novice
06. november 2001 - 14:21 Der er 14 kommentarer og
1 løsning

Konverter til \"simple\" bogstaver

Jeg skal konverterer en række navne til standard e-mail addresser.

Dvs. \"Peter Müller\" skal konverteres til Peter.Muller@mydom.com, da Peter.Müller@mydom.com ikke er en valid e-mail adresse.

Hvordan laver jeg dette generelt uden at have en stor konvertering tabel? (Noget med nogle bit der skal resettes?)

PS: Hvad hedder det jeg vil? :-) Det gør det nemmere at søge efter en løsning...
Avatar billede cliche Nybegynder
06. november 2001 - 14:30 #1
er koden Peter.Mü<a href=\"mailto:ller@mydom.com\">ller@mydom.com</a>?
Avatar billede arvesen Nybegynder
06. november 2001 - 14:30 #2
Hvis det er det du mener så......

ucase(\"Text\") bliver til \"TEXT\"
lcase(\"Text\") bliver til \"text\"


Avatar billede cliche Nybegynder
06. november 2001 - 14:32 #3
OK er det det her som er i vejen....
du har en masse Peter.Mü<a href=\"mailto:ller@mydom.com\">ller@mydom.com</a>?
som skal laves om til
<a href=\"mailto:Peter.Müller@mydom.com\">Peter.Müller@mydom.com</a>?
Avatar billede pdj Novice
06. november 2001 - 14:33 #4
Cliche: Forstår ikke hvad du spørger om? Det har intet med html-tags at gøre. Det er bare eksperten der konverterer mit spørgsmål for at hjælpe. (Her er det så lidt forvirrende)

Arvesen: Det er ikke upper/lower case der er problemet. Der er æøåüéá etc. der skal laves om til \"simple\" bogstaver.
Avatar billede simon_jacobsen Nybegynder
06. november 2001 - 22:03 #5
kræver knap(command1) og textbox(text1)

private sub command1_click()
dim fornavn, efternavn, h
dim i
for i = 1 to len(text1.text)
h = mid(text1.text, i, 1)
if h = \" \" then
fornavn = left(text1.text, i)
efternavn = right(text1.text, i - len(text1.text))
end if
next i

jeg håber det virker ellers skriver du bare :)


end sub
Avatar billede simon_jacobsen Nybegynder
06. november 2001 - 22:03 #6
der mangler lige lidt kommer i senere
Avatar billede pdj Novice
07. november 2001 - 08:50 #7
Er der slet ingen der forstår mit spørgsmål??? :-(

Jeg skal have konverteret en streng til at indeholde udelukkende bogstaver fra \"a\" til \"z\".

Dvs. bogstaver som fx æøåü etc. skal konverteres til aoau. Og hele pointen var at jeg IKKE ville have en konverteringsliste, men lave det generelt.

Da jeg ikke kunne vente på svar har jeg nu lavet det med en konverteringsliste. Jeg lader dog spørgsmålet hænge et par dage - derefter snupper jeg mine point igen. :-)
Avatar billede simon_jacobsen Nybegynder
07. november 2001 - 09:48 #8
kræver knap(command1) og textbox(text1)

private sub command1_click()
dim fornavn, efternavn, h, h2
dim i, i2
for i = 1 to len(text1.text)
h = mid(text1.text, i, 1)
if h = \" \" then
fornavn = left(text1.text, i)
efternavn = right(text1.text,len(text1.text) - 1)
end if
next i
dim samlet, testet
samlet = fornavn & \".\" & efternavn
for i2 = 1 to len(samlet)
h2 = mid(fornavn, i2, 1)
if h2 = \"ü\" then
testet = testet & \"u\"
elseif h2 = \"æ\" then
testet = testet & \"ae\"
elseif h2 = \"ø\" then
testet = testet & \"oe\"
elseif h2 = \"å\" then
testet = testet & \"aa\"
else
testet = testet & h2
end if
next i2

hvis der er noget der ikke forstår eller noget der ikke virker så skriv, så vil jeg forsøge at svare på det :)
Avatar billede simon_jacobsen Nybegynder
07. november 2001 - 09:51 #9
det her havde jeg lige glemt det skal bare sættes ind efter den kode jeg har skrevet :) :
\' kræver også lige en label(label1)
label1.caption = testet & \"@mydom.com\"
Avatar billede pdj Novice
07. november 2001 - 11:09 #10
Ok, nu er du med på det overordnede problem. :-)
Her har du så bare kodet at \"ø\" -> \"oe\" og \"å\" -> \"aa\" osv. Det er det jeg mener med konverteringslisten. Og det er den jeg gerne vil undgå for at lave det generelt, og dermed virker på alle sprog. Det betyder så at \"å\" ikke bliver til \"aa\", men til \"a\" og det er helt ok.

Som sagt har jeg selv lavet det nu med en konverteringsliste, og den indeholder over 20 tegn... Men jeg ved jo aldrig om det er nok.
Avatar billede simon_jacobsen Nybegynder
07. november 2001 - 13:27 #11
jeg tror ikke det kan gøres på en anden måde (rettere sagt hvis der er en bedere måde så kender jeg den ikke)
Avatar billede simon_jacobsen Nybegynder
07. november 2001 - 15:55 #12
kræver knap(command1),  label(label1) og textbox(text1)

private sub command1_click()
dim fornavn, efternavn, h, h2
dim i, i2
for i = 1 to len(text1.text)
h = mid(text1.text, i, 1)
if h = \" \" then
fornavn = left(text1.text, i)
efternavn = right(text1.text,len(text1.text) - 1)
end if
next i
dim samlet, testet
samlet = fornavn & \".\" & efternavn

for i2 = 1 to len(samlet)
h2 = mid(fornavn, i2, 1)
her:
if h2 = \"ü\" then
h2 = \"u\"
elseif h2 = \"æ\" then
h2 = \"ae\"
elseif h2 = \"ø\" then
h2 = \"oe\"
elseif h2 = \"å\" then
h2 = \"aa\"
else
dim svar, tekst
tekst = \"dette tegn \" & h2 & \" kan ikke benyttes til en email\" & vbctrl & \"hvilket tegn vil du bruge i stedet ?\"
svar = inputbox(tekst)
if not svar = \"\" then
goto her
else
exit sub
end if
end if
testet = testet & h2
next i2
label1.caption = testet & \"@mydom.com\" 
end sub

nu håber jeg du kan bruge det her :)
Avatar billede simon_jacobsen Nybegynder
08. november 2001 - 19:03 #13
kan du ikke bruge det her ???
Avatar billede pdj Novice
09. november 2001 - 08:28 #14
Nej, vi har vist en forskellig opfattelse af hvad \"en lang række\" er for en størrelse :-) Jeg snakker i tusindvis... Det skal køre uden indgriben fra brugere, men som sagt: Alt hvad der indholder en konverteringsliste er ligegyldigt.

Jeg mente bare der var en standard måde at få alle tegn \"simplificeret ned\" mellem a og z.

Konklusionen må være at der ikke er nogen løsning på mit problem.
Avatar billede simon_jacobsen Nybegynder
09. november 2001 - 10:30 #15
ja ok, det må der være :( (fair nok) intet direkte svar ingen point, selvom det var noget smukt kode jeg har bikset sammen for at få pointene.
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
Kurser inden for grundlæggende programmering

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