Avatar billede styless Nybegynder
17. marts 2004 - 20:09 Der er 11 kommentarer og
1 løsning

Javascript funktioner

Jeg har siddet og lavet nogle client-side script i VBScript men vil gerne have den lavet til JavaScript pga. kompatibilitets-problemer.

Funktionerne jeg søger er:

len    ... længde af en streng
instr  ... check om streng er i streng
replace ... replace streng med anden streng

...
Avatar billede avlund Nybegynder
17. marts 2004 - 20:16 #1
.length er i hvert fald længden.

.search() er måske den anden (kan dog være at den kun tager regexp) og så burde den tredje slet og ret være .replace .

http://devedge.netscape.com/library/manuals/2000/javascript/1.5/reference/
Avatar billede nmh Nybegynder
17. marts 2004 - 20:18 #2
Instr(s,"a")
s.indexOf("a")
Avatar billede nmh Nybegynder
17. marts 2004 - 20:28 #3
Avatar billede nute Nybegynder
17. marts 2004 - 20:32 #4
lengden af en string = .length
om en streng er i en anden streng = .indexOf
replace = replace, men den tager kun regulære udtryk


<script>
<!--
var str = "dette er en streng";
document.write( "Lengden af '" + str + "', er " + str.length + "<br>");
var strFindesDenneString = "streng";
document.write( "Strengen '" + strFindesDenneString + "' findes i '" + str + "' ved index: " + str.indexOf( strFindesDenneString ) + "<br>" );
var objRegExp = /streng/gi;
document.write( "Efter replace: " + str.replace( objRegExp, "pære" ) );
//-->
</script>
Avatar billede nmh Nybegynder
17. marts 2004 - 20:34 #5
Avatar billede nmh Nybegynder
17. marts 2004 - 20:37 #6
Mere om Replace. Dette er vist det bedste af mine forslag:
http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=3785&lngWId=2
Avatar billede nute Nybegynder
17. marts 2004 - 20:44 #7
nmh >> det giver jo ikke særlig meget mening i at linke til hvordan man skal bruge funktionen, når det er de regulære udtryk som er det mest besværlige med hele funktionen. Regulære udtryk er besværlig for en person der ikke har været i kontakt med det tidligere, og ved første øjekast virker det totalt volapyk ... et link til hvordan man kan bruge disse udtryk, ville være meget bedre forslag:

http://devedge.netscape.com/library/manuals/2000/javascript/1.3/reference/regexp.html

selv om dette bare er toppen af isbjerget, så er det bedre end intet. Man kan sidde og arbejde med regulære udtryk til man bliver blå i hovedet, og hvis man ikke helt er med på hvad der sker, så har man et "problem"

/nute
Avatar billede nmh Nybegynder
17. marts 2004 - 21:22 #8
nute>> Du har da helt ret, hvis det drejer sig om at forstå replace-funktionen i JavaScript til bunds.
Men hvis det blot er et ønske om at lave noget, der svarer til den sædvanlige VBscript replace-funktion, da er det sidste link, jeg gav, en god hjælp.
(NB: Hvis man besøger www.planet-source stedet nogle gange bliver man nødt til at registrere sig. Det er gratis)
Avatar billede roenving Novice
19. marts 2004 - 18:25 #9
.replace virker faktisk også med tekst-strenge, men det er noget mærkværdigt noget og vist lidt sværere at styre end regExps, som til gengæld er enormt svære at gå til ...

Prøv:

alert("Dette er en streng".replace("en","to"));

-- og den svarer:

"Dette er to streng" ?-)

-- med en regExp:

alert("Dette er en streng".replace(/en/,"to"));

svarer den det samme, men den kan jo så globaliseres:

alert("Dette er en streng".replace(/en/g,"to"));

og så bliver det:

"Dette er to strtog"
Avatar billede styless Nybegynder
23. marts 2004 - 11:31 #10
Jeg takker meget for alle de mange svar. Jeg har kun arbejdet lidt med det men det ser ud til at virke.

Især tak til nmh. Lig svar så du kan få dine point.
Avatar billede nmh Nybegynder
23. marts 2004 - 11:33 #11
Her er et. :o)
Avatar billede and_ Nybegynder
21. april 2004 - 23:21 #12
lukketid?
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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