Søg og erstat med RegExp
|
|
- Birthe Kvist
- 6 år siden
- Visninger:
Transkript
1 Denne guide er oprindeligt udgivet på Eksperten.dk Søg og erstat med RegExp Begrebet RegExp præsenteres her, og du får et lille program så du selv kan eksperimentere med RegExp. Skrevet den 07. Feb 2009 af per1291 I kategorien Programmering / JavaScript Vha. RegExp kan du forkorte din kode og samtidig gøre den hurtigere. RegExp tillader dig at skrive en tekstgenkendelseskode på en enkelt linje, hvor du før skulle bruge mange linjer. RegExp er et af de mere "langhårede" (avancerede) emner inden for Javascript. Med denne lille guide vil jeg gerne videregive mine foreløbige erfaringer med denne teknik. En stor del af denne artikel bygger på råd og anvisninger, som jeg har hentet fra eksperten.dk. Tak til de rigtig mange eksperter, som har bidraget gennem svar på mine og andre brugeres spørgsmål. Jeg har valgt at udelade eksempler, som kræver indsigt i andre "langhårede" emner: anonyme funktioner, funktioner med navngivne returværdier og den slags; disse emner fortjener selvstændig behandling. RegExp kan bruges til både VALIDERING, SØGNING og REDIGERING. En søgemaskine, som kan læse en RegExp, er hurtigere at bruge end en traditionel søgemaskine. Søgeteksten "kompet[ae]nce" vil således erstatte 2 forskellige søgninger, nemlig søgning efter "kompetance" og "kompetence". Det lille program i bunden af artiklen demonstrerer, hvordan du vha. RegExp kan FINDE et søgeord og ERSTATTE det med et andet. SØGEANVISNINGER: i, g og m Sådan finder du ordet "mand" i teksten "Men så kom manden hjem!": function findtekst() var inp="men så kom manden hjem!"; var reg=new RegExp("mand"); var erstat="match"; var out=inp.replace(reg,erstat); alert(out); /* Resultat: out="men så kom MATCHen hjem!" */ Sådan finder du flere forekomster af ordet mand i en tekst: function findtekst() var inp="manden arbejder som murerarbejdsmand."; var reg=new RegExp("mand","ig"); var erstat="match"; var out=inp.replace(reg,erstat); alert(out); /* Resultat: out="matchen arbejder som murerarbejdsmatch." */
2 De 2 ekstra søgeanvisninger i og g sørger for, at vi finder begge matches; uden dem ville vi ikke finde et eneste match! i betyder "ignorecase" (Ignorer uppercase og lowercase); g betyder "global" (Find alle matches og ikke blot det første). Der findes en tredje søgeanvisning: m betyder "multiline" (Medregn linjeskift i din søgning). Søgeanvisningen m vil i mange tilfælde være uden betydning, idet hele teksten alligevel behandles hvis g er brugt. Sådan MARKERER du hver enkelt linje i en tekst: Kør testprogrammet i bunden af artiklen. Indtast følgende i feltet Inputtekst, idet du trykker på enter-tasten efter første og anden linje: Manden arbejder hver dag som murerarbejdsmand. Indtast i feltet Søgestreng: ^(.+?)$ Indtast i feltet Erstat_med: [$1] Klik på "SØG og ERSTAT". Prøv igen, idet du fjerner fluebenet i m. Sådan ISOLERER du tekstens enkelte linjer i et array: var Linjer; function isolerlinjer(inputtekst) var reg=new RegExp("^(.+?)$",gm); Linjer=Inputtekst.match(reg); for (var i=0; i<linjer.length; i++) alert(linjer); Udtrykket "new RegExp" kan forkortes. Således kan linjen var reg=new RegExp("mand","igm"); også skrives sådan her: var reg=/mand/igm; Jeg vil bruge denne korte skrivemåde i resten af artiklen. ANTAL FOREKOMSTER af et match 2,5 betyder "mindst 2 og højst 5 forekomster". 6 betyder "præcis 6 forekomster". * er en forkortelse for 0, ("nul eller flere forekomster") + er en forkortelse for 1, ("1 eller flere forekomster")? er en forkortelse for 0,1 ("nul eller 1 forekomst")
3 Sådan VALIDERER du, om en indtastet tekst er et 6-cifret hexadecimalt tal (eksempelvis #00ffCC): function validerhex(inputtekst) var reg = /#[0-9a-f]6/i; return (Inputtekst == Inputtekst.match(reg); Forklaring: Funktionen tester, om en indtastning består af tegnet # efterfulgt af 6 forekomster af tegn fra en nærmere defineret tegnmængde. En tegnmængde defineres vha. de firkantede parenteser ([ og ]). Disse tegn skal enten være cifre (0-9) eller bogstaver mellem a og f (a-f). Det kan dog også være bogstaver mellem A og F, hvilket søgeangivelsen "i" fortæller. Sådan VALIDERER du, om en indtastet tekst er et heltal: function validerheltal(inputtekst) var reg=/[0-9]+/; return (Inputtekst == Inputtekst.match(reg)); Forklaring: Funktionen tester, om en indtastning består af 1 eller flere cifre. GRÅDIGHED og DOVENSKAB Sådan finder du samtlige HTML-tags i en tekst: var found; function findhtmltags(inputtekst) var reg=/<.*?>/g; found=inputtekst.match(reg); for (var i=0; i<found.length; i++) alert(found[i]); Lad os sige at Inputtekst="Det er <b>her[/b] du skal klikke"; Funktionen vil så sætte found lig med et ARRAY af samtlige matches, nemlig found[0]='<b>' og found[1]='[/b]'. Forklaring: Det regulære udtryk <.*?> vil matche enhver tegnfølge, som består af et < efterfulgt af 0 eller flere tegn afsluttet af det først forekommende >. Men hvorfor skal vi egentlig have spørgsmålstegnet med? Forklaringen er, at * i sig selv vil give "greedy matching"; maskinen vil finde det længst mulige match. Prøv at udelade spørgsmålstegnet og i stedet skrive: var reg=/<.*>/g; så vil funktionen sætte found[0]='<b>her[/b]'; Tegnkombinationen *? vil derimod give "lazy matching"; maskinen vil finde det kortest mulige match.
4 Operatorerne + samt de krøllede parenteser er "grådige" ligesom * - men kan gøres "dovne" vha. spørgsmålstegnet. META-TEGN og SPECIALTEGN Disse "meta-tegn" har speciel betydning i en RegExp: [ (firkantet startparentes) bruges til at angive en tegnmængde; udtrykket afsluttes med ]. ] (firkantet slutparentes) - se forrige linje. \ (backslash) bruges til at angive specialtegn og "normalisere" meta-tegn. ^ (caret) matcher positionen "linjestart"; men inde i firkantede parenteser betyder det "IKKE". $ (dollartegn) matcher positionen "linjeslut".. (punktum) matcher ethvert tegn. (lodret streg) betyder "eller".? (spørgsmålstegn) betyder "0 eller 1 forekomst". * (gangetegn) betyder "0 eller flere forekomster". + (plustegn) betyder "1 eller flere forekomster". ( (rund startparentes) bruges til at sammenbinde deludtryk; senere kan man bruge disse deludtryk ved "back-reference"; udtrykket afsluttes med ). ) (rund slutparentes) - se forrige linje. (OBS: Mine eksperimenter viser, at procenttegnet % tilsyneladende også har en særlig betydning - men hvilken?) Somme tider har man brug for i en RegExp at referere til disse tegn som TEGN (og altså IKKE bruge dem som "meta-tegn"). Så skal det pågældende tegn "escapes" eller "normaliseres" ved at man sætter en backslash foran det: [ skrives \[ osv. Vi kan efterprøve, at hver af disse escape-strenge fortolkes som almindelige tegn, ved at køre programmet og f.eks. sætte Inputtekst="[" og Søgetekst="\[" Disse "special-tegn" er defineret i browserens RegExp-maskine: \A (start of string) matcher positionen før tekstens allerførste tegn. \b (word boundary) matcher en position imellem et "word char" og et "ikke-word char". \B (NOT word boundary) matcher enhver position hvor \b ikke matcher. \c (control char) - desværre kan jeg ikke finde eksempler. \d (digit) matcher ethvert ciffer - er en forkortelse for tegnmængden [0-9]. \f (formfeed) matcher formfeed-tegnet. \n (newline) matcher ethvert linjeskift. \r (return) bruges af Windows sammen med \n, idet linjeskift hedder \r\n. \s (whitespace) matcher [\n\t\v ]. \t (tabulator) matcher det almindelige tabulatortegn. \v (vertical tab) matcher vertikalt tabulatortegn. \w (word char) matcher ethvert tegn, som tilhører tegnmængden [a-za-z0-9_] \W (NOT word char) matcher ethvert tegn, som IKKE tilhører tegnmængden [a-za-z0-9_] \0 (octal char) - f.eks. er \40 den oktale betegnelse for mellemrumstegnet. Vi kan efterprøve, at hvert af disse tegn fortolkes som specialtegn, ved at køre programmet og f.eks. sætte Inputtekst="abc" og Søgetekst="\b".
5 Andre RegExp-maskiner (f.eks. Perl) har desuden disse specialtegn: \a (alarm/bell), \e (escape), \E (end lowercase uppercase), \l (lowercase nextchar), \L (lowercase till \E), \N (named char), \Q (quote meta till \E), \u (uppercase nextchar), \U (uppercase till \E), \x (hex char) og \Z (end of string). Vi kan efterprøve, at ingen af disse tegn fortolkes som specialtegn, ved at køre programmet og f.eks. sætte Inputtekst="abc" og Søgetekst="\a". (OBS: Måske er der andre "special-tegn" end de nævnte. I så fald har jeg ikke fundet dem!) BACK-REFERENCE Runde parenteser tjener 2 formål: For det første binder man nogle anvisninger sammen i en logisk helhed, for det andet kan man senere referere til de fundne matches. Den første parentes i en RegExp kaldes $1, den anden parentes kaldes $2 osv op til $9. Sådan ERSTATTER du alle forekomster af <b> og [/b] med <strong> og </strong>: function changebtostrong(inputtekst) var reg=/<(/?)b>/ig; var erstat="<$1strong>"; OBJEKTET RegExp Objektet RegExp er en global variabel, som på ethvert tidspunkt vil indeholde oplysninger om det sidst benyttede (korrekte) regulære udtryk. Regulære udtryk bruges i forbindelse med String-metoder som match, exec, replace, split, test, search og indexof. Der er ikke plads til at forklare alle disse metoder her. RegExp indeholder de fundne matches - som du derefter kan referere til. Næste gang du bruger en af disse String-metoder, vil RegExp blive overskrevet, og nu er det de nye matches du kan referere til. Sådan FINDER du det første HTML-tag i en tekst: function findhtmltag(inputtekst) var reg = /(<.*?>)/; reg.exec(inputtekst); alert (RegExp.$1); FLERE PRAKTISKE EKSEMPLER Sådan SLETTER du alle forekomster af <b>, [/b], <i>,, og :
6 function deleteformtags(inputtekst) var reg = /</?(b i u)>/ig; var erstat=""; Sådan SLETTER du alle HTMLtags: function deletetags(inputtekst) var reg = /<[^>]+>/g; /* Husk at ^ inde i firkantede parenteser betyder IKKE */ var erstat=""; Sådan SLETTER du alle forekomster af (enkelt eller dobbelt) citationstegn: function deletequotes(inputtekst) var reg=/["']/g; var erstat=""; Sådan SLETTER du indledende og afsluttende "whitespace" fra teksten: function removesurroundingspace(inputtekst) var reg=/(^\s+ \s+$)/g; var erstat=""; Sådan ERSTATTER du overflødigt "whitespace" med enkelte space-tegn: function replacewhitespace(inputtekst) var reg=/\s+/g; var erstat=" "; Sådan VALIDERER du, om en indtastet tekst er en mulig adresse: function valid (inputtekst) var reg=/.*@\w[\w\.-]*\.[a-z]2,6/i; return (Inputtekst == Inputtekst.match(reg)); SLUT PÅ ARTIKEL - lidt om programmet:
7 Ved udskrift af en tekst (fx på skærmen) vil browseren FORTOLKE tegnene, hvilket ikke altid er hensigtsmæssigt. For at undgå dette formaterer jeg mine tekststrenge før udskrift. Der kommer to alertbokse når du kører programmet. I den første alertboks er Inputtekst formateret således at alle whitespace-tegn (f.eks. blanke og linjeskift) er erstattet af en firkant. Bemærk at i Windows indeholder et linjeskift 2 tegn, nemlig \r\n. I den anden alertboks er Outputtekst formateret på samme måde. Du kan selvfølgelig fjerne de to alerts, hvis du ikke har brug for dem. En RegExp-streng skal i sig selv være skrevet korrekt, ellers får man en kørselsfejl når man bruger den. I mit program under artiklen vil funktionen handleerror blive igangsat hvis der sker en kørselsfejl. Denne funktion går ud fra, at en indtastet RegExp-streng ikke er korrekt. Vær opmærksom på, at hvis du ændrer i programmet bør du SLETTE linjen window.onerror = handleerror;... indtil du er sikker på at dit program i øvrigt fungerer. Du kan sikkert godt få programmet til at lave noget uhensigtsmæssigt, hvis du virkelig anstrenger dig. Men til husbehov fungerer det. OG HER ER PROGRAMMET SÅ: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " <html> <head> <meta http-equiv="content-type" content="text/html; charset=iso "> <title>søg og erstat med RegExp</title> <script language="javascript" type="text/javascript"> function killtags(inpstring) inpstring=inpstring.replace(/(< &)/g,"$1<q></q>"); /* så htmltags og tegnkoder ikke fortolkes */ inpstring=inpstring.replace(/ /g," "); /* så blanke ikke udelades på skærmen */ return inpstring; function formatoutput(outstring) /* så strengen ser rigtig ud på skærmen */ outstring=killtags(outstring); return outstring.replace(/\r?\n/,"<br>"); function formatreplacetekst(changetekst) changetekst=killtags(changetekst); return changetekst.replace("\"","\\\""); function formatalert(inpstring)
8 return inpstring.replace(/\s/g,"\177"); function clearresults() document.getelementbyid("javascripttekst").innerhtml=""; document.getelementbyid("outputtekst").innerhtml=""; function erstattegn() var Inputtekst=document.getElementById("inputTekst").value; clearresults(); alert("inputtekst (længde="+inputtekst.length+"):\n"+formatalert(inputtekst)); var regexpression=document.getelementbyid("searchtekst").value; var searchtype=""; if (document.getelementbyid("ignorecase").checked) searchtype+="i"; if (document.getelementbyid("global").checked) searchtype+="g"; if (document.getelementbyid("multiline").checked) searchtype+="m"; var showreg=new RegExp(killTags(regExpression),searchType); var regexpression=new RegExp(regExpression,searchType); var changetekst=document.getelementbyid("replacetekst").value; var scripttekst="var reg="+showreg+";<br>"; scripttekst+="var erstat=\""+formatreplacetekst(changetekst)+"\";<br>"; scripttekst+="outputtekst=inputtekst.replace(reg,erstat);"; document.getelementbyid("javascripttekst").innerhtml=scripttekst; var Outputtekst=Inputtekst.replace(regExpression,changeTekst); alert("outputtekst (længde="+outputtekst.length+"):\n"+formatalert(outputtekst)); document.getelementbyid("outputtekst").innerhtml=formatoutput(outputtekst); function handleerror() var errortekst="error:<br>din søgestreng er ikke en korrekt RegExp -<br>og vil give fejl, hvis du bruger den i et program."; document.getelementbyid("javascripttekst").innerhtml=errortekst; return true; window.onerror = handleerror; </script> <style type="text/css"> body font-family:arial,verdana,helvetica,sans-serif; font-size:16px; h1 font-size:20px; table background-color:white; td align:left; background-color:cyan; #BodyDiv width:680px; #inputtekst,#searchtekst,#replacetekst,#outputtekst font-family:courier, MS Courier New, monospace; font-size:14px; #javascripttekst background-color:yellow; font-family:courier, MS Courier New, monospace; fontweight:bold; font-size:14px; </style> </head>
9 <body bgcolor="cyan"> <center> <div id="bodydiv"> <h1>søg og erstat med RexExp</h1> <table border="1"> <tr><td><b>inputtekst</b></td> <td><textarea rows=2 cols=80 id="inputtekst"></textarea></td></tr> <tr><td><b>søgestreng (RegExp)</b></td> <td><input type="text" size="80%" id="searchtekst"></td></tr> <tr><td><b>searchmode</b></td> <td> <table width="100%" cellspacing="0"><tr> <td align="center">i = ignorecase <input type="checkbox" id="ignorecase" checked="true"></td> <td align="center">g = global <input type="checkbox" id="global" checked="true"></td> <td align="center">m = multiline <input type="checkbox" id="multiline" checked="true"></td> </tr></table> </td> </tr> <tr><td><b>erstat med</b></td> <td><input type="text" size="80%" id="replacetekst" value="match"></td></tr> <tr><td><b>udfør[/b]</td> <td align="center"> <button onclick="erstattegn()">søg og ERSTAT</button> </td></tr> <tr><td><b>scriptkode[/b]</td> <td id="javascripttekst" width="100%" align="left"> </td></tr> <tr><td><b>outputtekst[/b]</td> <td id="outputtekst" align="left"> </td></tr> </table> [/div] </center> </body> </html> Kommentar af roenving d. 04. Jan En rigtig god gennemgang!-) -- og busschous bemærkning om at RegExp sluger kræfter er jeg også stødt ind i, men en umiddelbar vurdering vil være, at almindelige operationer er så lidt omkostningskrævende, at browseren har masser af kræfter, mens koden bliver adskilligt nemmere at skrive og gennemskue!o] Kommentar af coderdk d. 04. Jan Lækkert! Lad os få udbredt kendskabet til regular expressions ;) Jeg fik hovedpine af din kode; indentér den! ;) Kommentar af busschou d. 08. Sep Du starter med at skrive følgende linje - Citat start - Vha. RegExp kan du forkorte din kode og samtidig gøre den hurtigere. - Citat slut. Jeg har hørt brugere herinde tale om at RegExp er en "sluger". Jeg har ingen dokumentation herom, men omvendt savner jeg dokumentation for din påstand om at RegExp kan gøre mine ting hurtigere Kommentar af wicez (nedlagt brugerprofil) d. 07. Sep
10 Rigtig god artikel!
Tilpasning til skærm og browser
Denne guide er oprindeligt udgivet på Eksperten.dk Tilpasning til skærm og browser Du har lavet en kode, som fungerer fortrinligt på din egen computer. Glad og tilfreds lægger du din hjemmeside på Nettet.
Læs mereRegulære udtryk, 2. del
Denne guide er oprindeligt udgivet på Eksperten.dk Regulære udtryk, 2. del Artiklen uddyber mange af de begreber, som blev introduceret i den 1. artikel. Den burde dog kunne læses alene, hvis man allerede
Læs mereNu skal vi især se på <font> og <center> samt centrering af hele siden på skærmen.
Validering 4 Nu skal vi især se på og samt centrering af hele siden på skærmen. Det er i HTML ikke forbudt at bruge koden , men lad nu være alligevel, du får blot en masse valideringsproblemer.
Læs mereForm og dens underlige box model
Denne guide er oprindeligt udgivet på Eksperten.dk Form og dens underlige box model Denne artikel handler om hvilke problemer man som webudvikler kan komme ud for, og hvordan man løser dem. Jeg kommer
Læs mereI mit script tager jeg højde for det problem ved, at gemme et unikt tal mellem 0-9 på 6 cifre og derved vil de så blive vist som 2 online.
Denne guide er oprindeligt udgivet på Eksperten.dk Hvem er online? Online script, som tager højde for at der kan være flere personer, som har den samme IP-adresse. Scriptet viser hvor lang tid brugeren
Læs mereRegulære udtryk, 1. del
Denne guide er oprindeligt udgivet på Eksperten.dk Regulære udtryk, 1. del Validere input - udtrække tekst af tekst efter specielle kriterier - efterbehandle tekst. Regulære udtryk kan alt dette og mere
Læs mereDenne artikel er til dem der ønsker at vide mere om hvad CSS er og hvad CSS kan bruges til hvad angår WWW.
Denne guide er oprindeligt udgivet på Eksperten.dk CSS - en gennemgang Denne artikel er til dem der ønsker at vide mere om hvad CSS er og hvad CSS kan bruges til hvad angår WWW. Der er lidt CSS historie
Læs mereMed register_globals = On får du automatisk adgang til en række variabelnavne i dit script.
Denne guide er oprindeligt udgivet på Eksperten.dk Register Globals Off Lad os slå en ting fast med det samme - register_globals = Off er en god ting, i hvert fald set ud fra et sikkerhedsmæssigt synspunkt.
Læs mereI denne artikel, vil der blive gennemgået de grundlæggende PHP-funktioner, såsom udskrift til skærmen, tid og dato og if-sætningen.
Denne guide er oprindeligt udgivet på Eksperten.dk Grundlæggende PHP I denne artikel, vil der blive gennemgået de grundlæggende PHP-funktioner, såsom udskrift til skærmen, tid og dato og if-sætningen.
Læs mereTagwall med Php & MySQL
Denne guide er oprindeligt udgivet på Eksperten.dk Tagwall med Php & MySQL Her laver vi en tagwall i Php & MySQL... jeg forklarer dog ikke så meget, men jeg håber du kan få det til at blive til en tagwall
Læs mereLoginsystem (med MySQL)
Denne guide er oprindeligt udgivet på Eksperten.dk Loginsystem (med MySQL) Dette er en guide til, hvordan man kan lave et loginsystem med php og muligvis også med sessioner og MySQL Skrevet den 02. Feb
Læs mereManual Søg & erstat. Søg efter tekst
Søg efter tekst Manual Søg & erstat Du kan hurtigt søge efter hver forekomst af et bestemt ord eller en bestemt sætning. 1. Klik på Søg i gruppen Redigering på fanen Startside (Genvej: Ctrl + B). 2. Skriv
Læs mereAt klippe en streng over på det mest hensigtsmæssige sted
Denne guide er oprindeligt udgivet på Eksperten.dk At klippe en streng over på det mest hensigtsmæssige sted Formålet med denne artikel er at kaste lidt lys over, hvordan man klipper en streng over på
Læs mereAnvendelse af metoder - Programmering
Denne guide er oprindeligt udgivet på Eksperten.dk Anvendelse af metoder - Programmering En forhåbentlig rigtig god forklaring på hvad metoder er og hvordan de anvendes. Lidt om private og public, retur
Læs mereByggebasen Javascript
EG Data Inform Byggebasen Javascript Implementering af ansvarsperioder og produktdata på eget site Jens Karsø 2013 Indhold Byggebasen javascript-plugin til DB12-site... 2 DB12-site kommunikationsmodel...
Læs mereSådan kan du sende data fra din egen hjemmeside til JitBesked via en HTML-JDF.
Sådan kan du sende data fra din egen hjemmeside til JitBesked via en HTML-JDF. Vejledningen her beskriver hvordan man opbygger en form i HTML og sender indholdet af felterne til JitBesked. Det kræver du
Læs mereDynamisk PHP design OPDATERET
Denne guide er oprindeligt udgivet på Eksperten.dk Dynamisk PHP design OPDATERET I har måske undret jer over "http://bla.dk/?side=kontakt", her beskriver jeg hvordan, og hvorfor Skrevet den 03. Feb 2009
Læs mereBeginning CSS and Web Development kap. 1 11
Beginning CSS and Web Development kap. 1 11 Plan Xhtml opbygning CSS Divs, class, id Baggrunde, farver og billeder Tekst Links Lister Tabeller Stand up programmering Xhtml vs. html i XHTML skal alle elementer
Læs mereI denne arktikle går jeg gennem Slet, Ret og Opret data i en MySQL database. der er også en lille del i den hvor den postere datanen ud i en løkke
Denne guide er oprindeligt udgivet på Eksperten.dk MySQL for nybegynder I denne arktikle går jeg gennem Slet, Ret og Opret data i en MySQL database. der er også en lille del i den hvor den postere datanen
Læs mereInteraktionsudvikling
Projektopgave 3: Interaktionsudvikling CPH business, klasse: MulA2013 Projektansvarlige undervisere Thomas Hartmann MereteGeldermann lützen: Projekt produkt url: www.amalieardahl.dk/projekt3/index.html
Læs merePHP guide af Daniel Pedersen
PHP guide af Daniel Pedersen Side 1 af 12 Indholdsfortegnelse PHP guide af Daniel Pedersen Side 2 af 12 Indledning I dette hæfte finder du forklaringer til PHP funktioner, løkker, variabler samt en række
Læs mereJavaScript. nedarvning.
JavaScript er et sprog, der kan give en hjemmeside mere funktionalitet og gøre den interaktiv, så den reagerer på læsernes handlinger. CGI (Common Gateway Interface) har hidtil været de protokoller, man
Læs mereOrdbøgerne.dk. Navne: Andreas Foldager og Rasmus Bjerring Pedersen Fag: IT B Lærer: Karl Bjarnason Afleveringsdato: 17-11-06.
Ordbøgerne.dk Navne: Andreas Foldager og Rasmus Bjerring Pedersen Fag: IT B Lærer: Karl Bjarnason Afleveringsdato: 17-11-06 Side 1 af 35 Indholdsfortegnelse Indledning:...3 Design...4 Visuelt design:...4
Læs mereGrundlæggende HTML. Hjemmesider, kommunikation og kode. mandag den 13. august 12
Grundlæggende HTML Hjemmesider, kommunikation og kode Hvad er HTML? Hyper Text Markup Language Beskrivelsen siger at det er et tekst sprog bestående af markører Bruges til at vise hjemmesider i en browser,
Læs mereCentOS 7. Lavet af Ali Sarac og Andreas Jensen
CentOS 7 Lavet af Ali Sarac og Andreas Jensen 3.8.2017 Indholdsfortegnelse Konklusion... 3 Installer CentOS 7 i VMware... 3 Installation af Apache, PHP5 og vores HTML side... 7 2.4 spørgsmål... 12 Kildekoder...
Læs mereAfsending af s vha. ASP
Denne guide er oprindeligt udgivet på Eksperten.dk Afsending af emails vha. ASP Det kan ofte være praktisk at afsende emails fra sin hjemmeside. Denne artikel tager udgangspunkt i komponenten JMail fra
Læs merePassword-beskyttelse af visse filer
W EB DESIGN 101 K ODEORDSBESKYTTELSE A F VISSE FI LER Password-beskyttelse af visse filer P å et websted kan det være interessant kun at give en del af brugerskaren adgang til visse filer. Der er en mængde
Læs mereProgrammering for begyndere Lektion 2. Opsamling mm
Lektion 2 Opsamling mm God tone Der er indlagt spørge sessioner Lektion 2 - Agenda Programmering for Lidt ændringer til teknikken, herunder hvordan du genser en lektion Lidt generelle tilbagemeldinger
Læs mereBits, bit operationer, integers og floating point
Denne guide er oprindeligt udgivet på Eksperten.dk Bits, bit operationer, integers og floating point Denne artikel beskriver hvordan data gemmes som bits og hvordan man kan manipulere med bits. Den forudsætter
Læs mereRegulære udtryk, 4. del, Kogebogsudtryk
Denne guide er oprindeligt udgivet på Eksperten.dk Regulære udtryk, 4. del, Kogebogsudtryk Artiken gennemgår regex'er til nogle almindelige opgaver: dato, klokkeslet, email adresse, URL, HTML-tags og -attributter,
Læs mereSådan skriver du artikler til Eksperten!
Denne guide er oprindeligt udgivet på Eksperten.dk Sådan skriver du artikler til Eksperten! Når du skriver artikler handler det om at få den ud til de rigtige personer, og vise den frem så den er let forståelig.
Læs mereStart på javascript. Denne guide er oprindeligt udgivet på Eksperten.dk. Skrevet den 03. Feb 2009 af webstuff I kategorien Programmering / JavaScript
Denne guide er oprindeligt udgivet på Eksperten.dk Start på javascript En begynder artikel til javascript som vil gennemgå: 1: Intro 2: Variabler 3: Arrays 4: Matematik 5: Betingelser 6: Løkker 7: Funktioner
Læs mereSom sagt kræves der helst lidt viden om OOP hvis man virkelig vil lærer noget, og ikke bare lave copypaste
Denne guide er oprindeligt udgivet på Eksperten.dk Indkøbsvogn i PHP I denne artikel vil jeg prøve at lave en indkøbskurv som let kan udvides, og som ikke er svær at forstå. Det er bedst med viden om OOP(klasser),
Læs mereI denne artikel vil du ved hjælp af arrays kunne afrunde et decimaltal til et helt tal.
Denne guide er oprindeligt udgivet på Eksperten.dk Afrund til helt tal I denne artikel vil du ved hjælp af arrays kunne afrunde et decimaltal til et helt tal. Skrevet den 03. Feb 2009 af tjomsen I kategorien
Læs mereArrays i PHP. Denne guide er oprindeligt udgivet på Eksperten.dk. Skrevet den 04. Feb 2009 af taskmgr I kategorien Programmering / PHP
Denne guide er oprindeligt udgivet på Eksperten.dk Arrays i PHP De fleste som har skrevet omfattende scripts, er før eller siden stødt på problemet med at de bliver vanskelige at overskue hvis man bruger
Læs mereOm styles / typografier / typografiark / stylesheets
Om styles / typografier / typografiark / stylesheets (dvs. Cascading StyleSheet ~ CSS) CSS er et sprog til at definere layout på HTML-dokumenter. CSS indeholder flere muligheder for layout end HTML og
Læs mereDatabase design for begyndere
Denne guide er oprindeligt udgivet på Eksperten.dk Database design for begyndere Denne artikel beskriver hvordan man kommer fra ide til database design. Den stopper inden normal former. Den forudsætter
Læs mereGæstebog med validering opbygget med MySQL
Denne guide er oprindeligt udgivet på Eksperten.dk Gæstebog med validering opbygget med MySQL Dette er en simpel gæstebog, som kan hjælpe folk med at lave en velfungerende gæstebog uden alt for meget arbejde.
Læs mereArrays og deres slægtskab med objects
Denne guide er oprindeligt udgivet på Eksperten.dk Arrays og deres slægtskab med objects Grundlæggende beskrivelse af arrays, deres oprettelse og brug. For den lidt mere øvede er der også en snak om associative
Læs mereProjekt i Programmering C Menu til hjemmeside.
Projekt i Programmering C Menu til hjemmeside. 10-12-2004 Holstebro HTX Bent Arnoldsen Synopsis. Projektet her er en menu til hjemmesider, som er lavet så den er let at tilrette, når man tilføjer eller
Læs mereHvad er Objekter - Programmering
Denne guide er oprindeligt udgivet på Eksperten.dk Hvad er Objekter - Programmering En rigtig god gennemgang af hvad objekter er! Hvordan de oprettes og anvendes! Det er helt klart til nybegyndere, som
Læs mereFBS for praktikere Fyn. Notifikation og print skabeloner
FBS for praktikere Fyn Notifikation og print skabeloner 1.Velkomst v/anton Helms 2.Introduktion til HTML/CSS/Freemarker v/kent Gottschalk Hansen. 3.Skabeloner i Cicero v/kent Gottschalk Hansen. 4.Erfaringsudveksling
Læs mereKontrol-strukturer i PHP
Denne guide er oprindeligt udgivet på Eksperten.dk Kontrol-strukturer i PHP Denne artikel gennemgår kontrolstrukturer i PHP. 'if', 'switch', 'while' og 'for' bliver gennemgået. Den forudsætter lidt grundlæggende
Læs mereWebmaster Sweet-Swing.dk Websidens opbygning. Som eksempel er brugt siden om korets målsætning som den vises i editoren.
Opbygning Som eksempel er brugt siden om korets målsætning som den vises i editoren. I editoren vises tabellinierne, selvom de på den færdige side i vores tilfælde er usynlige, bortset fra den sorte ramme
Læs mereHTML, PHP, SQL, webserver, hvad er hvad??
Dagens menu HTML og PHP: Baglæs fra output til input PHP: Variable, strenge og arrays Funktioner, oprettelse og kald (og variable på tværs af funktioner) echo vs return? if-else konstruktioner MySQL: Hvad
Læs mereSend fra Java. Denne artikel fortæller hvad man skal bruge og hvordan man skal kode for at sende fra Java.
Denne guide er oprindeligt udgivet på Eksperten.dk Send email fra Java Denne artikel fortæller hvad man skal bruge og hvordan man skal kode for at sende email fra Java. Simple eksempler ikke noget vildt
Læs mereUndtagelseshåndtering i C#
Denne guide er oprindeligt udgivet på Eksperten.dk Undtagelseshåndtering i C# I modsætning til C++ kan man i C# ikke skrive et program uden undtagelseshåndtering, så derfor har jeg skrevet denne guide
Læs mereSingleton pattern i Java
Denne guide er oprindeligt udgivet på Eksperten.dk Singleton pattern i Java Denne artikel beskriver Singleton pattern og implementation i Java. Den forudsætter kendskab til Java men ikke til Singleton.
Læs mereIndledning. MIO er optimeret til Internet Explorer. Læs endvidere under Ofte stillede spørgsmål.
Indhold Indledning... 3 Søgefunktioner... 4 Søgning fra forsiden... 5 Søgning under menupunktet Instrument... 6 Sådan får man vist instrumenterne i en bestemt afdeling... 7 Sådan ændrer man status på et
Læs mereLav din egen forside i webtrees
Lav din egen forside i webtrees Du behøver ikke at kunne kode eller gøre noget advanceret for at designe din helt egen forside i webtrees. Alt du skal gøre er bare at gøre brug af den indbygget editor.
Læs merePHP Crash course. Databaser
PHP Crash course Databaser PHP Intro PHP er et server scripting sprog der kan bruges til at lave aktivt indhold på hjemme sider. Der er to betingelser som skal opfyldes for at serveren fortolker PHP koden.
Læs mereReeksamen, DSDS, forår 2008
Reeksamen, DSDS, forår 2008 Introduktion til Scripting, Databaser og Systemarkitektur Jonas Holbech IT Universitetet i København 22. august 2008 Alle hjælpemidler er tilladte, dog ikke computer og kommunikationsmidler.
Læs mereKapitel 3 Betinget logik i C#
Kapitel 3 i C# er udelukkende et spørgsmål om ordet IF. Det er faktisk umuligt at programmere effektivt uden at gøre brug af IF. Du kan skrive små simple programmer. Men når det bliver mere kompliceret
Læs mereIntroduktion til funktioner, moduler og scopes i Python
Denne guide er oprindeligt udgivet på Eksperten.dk Introduktion til funktioner, moduler og scopes i Python Denne artikel er fortsættelsen af "I gang med Python", som blevet publiceret her på sitet for
Læs mereJavaScript. Grundlæggende elementer. Jørgen Sørensen. jososoft software development. 1998-2007 Jørgen Sørensen
JavaScript Grundlæggende elementer Jørgen Sørensen jososoft software development 1998-2007 Jørgen Sørensen Indholdsfortegnelse Introduktion Det første program Variabler.. Operatorer Objekthierarkiet i
Læs mereFor dig som skal levere programmer til bideo.dk
For dig som skal levere programmer til bideo.dk Oktober 2011 - Version 5 INDLEDNING... 2 ANVENDELSE AF B2B.BIDEO.DK... 2 Den offentlige og den beskyttede webside... 2 Processen... 2 Før du bruger systemet
Læs mere//Udskriver System.out.println("Hej " + ditfornavn + " " + ditefternavn + "."); System.out.println("Du er " + dinalder + " aar gammel!
Denne guide er oprindeligt udgivet på Eksperten.dk Brugerinput i Java Denne her artikel gennemgår diverse ting ved brug af brugerinput i Java. Den starter med det simple og fortæller derefter skridt for
Læs mereALMINDELIGT ANVENDTE FUNKTIONER
ALMINDELIGT ANVENDTE FUNKTIONER I dette kapitel gennemgås de almindelige regnefunktioner, samt en række af de mest nødvendige redigerings- og formateringsfunktioner. De øvrige redigerings- og formateringsfunktioner
Læs mereFormatering af tekst, JCE Editor, Joomla
Formatering af tekst, JCE Editor, Joomla skrevet af Inge Vittrup Paragraph anvender du ved almindelige sætninger. Heading 1 er hovedoverskrift med største skrift. Heading 2 er overskrift til en artikel
Læs mereEn lille vejledning til lærere og elever i at bruge matematikprogrammet WordMat (begynderniveau)
Matematik i WordMat En lille vejledning til lærere og elever i at bruge matematikprogrammet WordMat (begynderniveau) Indholdsfortegnelse 1. Introduktion... 3 2. Beregning... 4 3. Beregning med brøker...
Læs mereProgrammering i Javascript
Programmering i Javascript 1. Introduktion HTML er et fortrinligt værktøj til at strukturere og præsentere information, men hvis web siderne skal være interaktive, så der kan reageres på brugerens handlinger,
Læs mereOffset til terminalskærm i Java
Denne guide er oprindeligt udgivet på Eksperten.dk Offset til terminalskærm i Java Ikke en atikkel - men en Classe til java der gør det nemt at skrive ud på avancerede måder når man kun opererer i dosvindue.
Læs mereDelphi og Databaser for begyndere
Denne guide er oprindeligt udgivet på Eksperten.dk Delphi og Databaser for begyndere Denne artikel handler om hvordan man udnytter noget af det bedste i Delphi: Dets gode muligheder for integrering med
Læs mereInitialmåling for deltager
Initialmåling for deltager Kundedemo - Demohold Deltagerkode - leif Kendt pensum Mulig tilvækst 25% 25% af de pensum relaterede spørgsmål blev besvaret rigtigt. I gang med tekstbehandling 1 Tilpasse opsætning
Læs mereWeb 2.0. World Wide Web (www)
Web 2.0 World Wide Web (www) I marts 1989 skrev Tim Berners-Lee et information udveksling program kaldt ENQUIRE. Da han arbejde i CERN, var han ikke tilfreds med kommunikationen, derfor videreudviklede
Læs mereFlexMatematik B. Introduktion
Introduktion TI-89 er fra start indstillet til at åbne skrivebordet med de forskellige applikationer, når man taster. Almindelige regneoperationer foregår på hovedskærmen som fås ved at vælge applikationen
Læs mereKoden i denne guide vil kun virke i Flash MX 2003 og MX ikke ældre versioner!
Denne guide er oprindeligt udgivet på Eksperten.dk Slideshow - Guide Denne guide gennemgår grundigt og forklarende hvordan man i Flash laver et slideshow med simpel fade-effekt med billeder hentet dynamisk.
Læs mereRatingsystem i PHP og MySQL
Denne guide er oprindeligt udgivet på Eksperten.dk Ratingsystem i PHP og MySQL Lær at lave et system til at vise rating/bedømmelse på artikler og nyheder. Skrevet den 03. Feb 2009 af virtual1ty I kategorien
Læs mereDe skjulte input typer:
Hvis man skal lave en html formular er der nogle felter til rådighed som kan benyttes, alt efter hvad output fra formularen skal være. Det felt som alle andre felter skal omkranses af er form tagget, som
Læs mereDM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2018 Projekt, del II Institut for matematik og datalogi Syddansk Universitet 20. marts, 2019 Dette projekt udleveres i tre dele. Hver del har sin deadline, således
Læs mereListen over reserverede ord er meget lang, men de væsentligste vil jeg beskrive her i denne artikel:
Denne guide er oprindeligt udgivet på Eksperten.dk SQL og ASP En artikel omkring simpel SQL og hvordan disse opbygges, udformes og udføres, sådan at man kan få et brugbart resultat i ASP. Dette ligefra
Læs merePHP 3 UGERS FORLØB PHP, MYSQL & SQL
PHP 3 UGERS FORLØB PHP, MYSQL & SQL Uge 1 & 2 Det basale: Det primære mål efter uge 1 og 2, er at få forståelse for hvordan AMP miljøet fungerer i praksis, og hvordan man bruger PHP kodesproget til at
Læs mere2) Det er let at være produktiv med Python, da Python som regel kun har mellem 67 og 80% færre linier end tilsvarende C eller Java kode.
Denne guide er oprindeligt udgivet på Eksperten.dk I gang med Python I denne artikel vil jeg forsøge at give et kort og hurtigt indblik i programmeringssproget Python, der desværre er alt for overset.
Læs mereBegrynder til at lave log ind system
Denne guide er oprindeligt udgivet på Eksperten.dk Begrynder til at lave log ind system Hej Vil jeg gerne lave en lille programmering forklare til hvordan du laver din helt egen lille start på at log ind
Læs mereAnvendelse af Model- View koncept i SAS Stored Processer
Anvendelse af Model- View koncept i SAS Stored Processer Peter Sandal Boll Chefkonsulent Professional Services, Skanderborg SAS Institute A/S Agenda Model-View-Controller konceptet (MVC) Eksempel med put-rapport
Læs mereDokumentering af umbraco artikeleksport:
Dokumentering af umbraco artikeleksport: Lav en artikel side 2-3. Installationsguide side 3-5. Opsættelse af databasen og web.config side 5-8. Umbraco: templates side 8. Umbraco: borger.dk tab side 8.
Læs mereParameters. Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til C# og ADO.NET.
Denne guide er oprindeligt udgivet på Eksperten.dk Parameters Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til C# og ADO.NET. Der findes en tilsvarende artikel med
Læs mereHej alle sammen, nu fjerner vi lige mystikken om alle de "ulovlige tags" her på eksperten.dk
Denne guide er oprindeligt udgivet på Eksperten.dk Tags på Eksperten.dk Hej alle sammen, nu fjerner vi lige mystikken om alle de "ulovlige tags" her på eksperten.dk Skrevet den 30. okt 2009 af mbm2007
Læs mereDette er en grundlæggende artikel til hvordan du laver et lille community, med forskelige
Denne guide er oprindeligt udgivet på Eksperten.dk Lav et community Dette er en grundlæggende artikel til hvordan du laver et lille community, med forskelige diverse funktioner. I de fleste community's
Læs mereSARA. Kvik Guide 2. udgave. Denne vejledning vil på mindre end en time vise dig, hvordan du kommer i gang med at bruge SARA.
SARA Kvik Guide 2. udgave Denne vejledning vil på mindre end en time vise dig, hvordan du kommer i gang med at bruge SARA. Du vil lære at: Søge poster; Fremvise poster; Redigere en eksisterende post; Oprette
Læs mereDM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2018 Projekt, del II Institut for matematik og datalogi Syddansk Universitet 13. marts, 2018 Dette projekt udleveres i tre dele. Hver del har sin deadline, således
Læs mereMicrosoft Word 2007. thoremil.dk
Microsoft Word 2007 Indskrivning... 3 Gem og udskriv... 4 Åbn og Luk... 5 Tastatur... 6 Mus... 9 Indsæt specielle tegn og symboler... 10 Formatering af tegn... 11 Formatering af afsnit... 12 Punktopstilling...
Læs mereDenne artikel gennemgår kort nogle mulighederne for brug af XML i ASP. Det sker ved brug af eksempler. Eksemplerne vil være i VBS.
Denne guide er oprindeligt udgivet på Eksperten.dk XML i ASP Denne artikel gennemgår kort nogle mulighederne for brug af XML i ASP. Det sker ved brug af eksempler. Eksemplerne vil være i VBS. Den forudsætter
Læs mereLog ind med PHP. Denne guide er oprindeligt udgivet på Eksperten.dk. Skrevet den 09. May 2011 af dab93 I kategorien Programmering / Andre
Denne guide er oprindeligt udgivet på Eksperten.dk Log ind med PHP Med denne guide lærer du hvordan du kan logge ind på din hjemmeside med PHP. Guiden viser dig hvordan koderne skal opstilles, og hvad
Læs mereHistorisk Tidsskrift teknisk dokumentation Side 1
Historisk Tidsskrift teknisk dokumentation Side 1 1. Indledning...2 1.1 Referencer...2 1.2 Versionshistorie...2 1.3 Definitioner...2 1.4 Dokumentationens opbygning...2 2. Generel beskrivelse...3 2.1 Oversigt...3
Læs mereAptana editor til MAC og Windows
1 Aptana editor til MAC og Windows http://aptana.com/products/studio3/download For at downloade Mac versionen skal du klikke på : Customize Your Download og der efter klikke på MAC OS X. Indtast navn og
Læs mereMicrosoft Word 2010 Huskesedler
Microsoft Word 2010 Huskesedler Indskrivning... 3 Gem og udskriv... 4 Åbn og Luk... 5 Tastatur... 6 Mus... 9 Indsæt specielle tegn og symboler... 10 Formatering af tegn... 11 Formatering af afsnit... 12
Læs mereSkriftlig eksamen, Programmer som Data Onsdag 5. januar 2011
Skriftlig eksamen, Programmer som Data Onsdag 5. januar 2011 Version 1.1 af 2011-01-28 Dette eksamenssæt har 7 sider. Tjek med det samme at du har alle siderne. Eksamens varighed er 4 timer. Der er fire
Læs mereNamespaces. Vi kan kvalificere elementer på denne måde: <?xml version="1.0" encoding="iso-8859-1"?>
Namespaces...1 Default namespace:...6 Præfiks:...7 To slags navne i XML:...11 Standard namespaces:...14 RDF Resource Description Framework:...18 Attributter:...19 DTD skemaer og namespaces:...21 Namespaces.
Læs mereBrugerdefineret menuer i Access
Denne guide er oprindeligt udgivet på Eksperten.dk Brugerdefineret menuer i Access Denne artikel henvender sig primært til let øvede brugere af Access, der ønsker at komme i gang med at tilpasse egne menuer
Læs mereLad os lave en hjemmeside. Kikker du på http://www.olehasselbalch.dk, vil du højst sandsynligt se dette.
Lad os lave en hjemmeside. Kikker du på http://www.olehasselbalch.dk, vil du højst sandsynligt se dette. Spørgsmålet er nu, hvordan laver man sådan en side? Du skal have et såkaldt webhotel, hvilket jeg
Læs mereIndhold. Maskinstruktur... 3. Kapitel 1. Assemblersprog...3. 1.1 Indledning...3 1.2 Hop-instruktioner... 7 1.3 Input og output...
Indhold Maskinstruktur... 3 Kapitel 1. Assemblersprog...3 1.1 Indledning...3 1.2 Hop-instruktioner... 7 1.3 Input og output... 9 Kapitel 2. Maskinkode... 13 2.1 Den fysiske maskine... 13 2.2 Assemblerens
Læs mereMed TI-89 / TI-92 Plus kan du også sammenligne eller manipulere binære tal bit for bit.
Kapitel 20: Talsystemer 20 Resumé af talsystemer... 344 Indtastning og omregning af talsystemer... 345 Udførelse af matematiske beregninger med hexadecimale og binære tal... 346 Sammenligning eller manipulation
Læs mereKlasse 1.4 Michael Jokil 03-05-2010
HTX I ROSKILDE Afsluttende opgave Kommunikation og IT Klasse 1.4 Michael Jokil 03-05-2010 Indholdsfortegnelse Indledning... 3 Formål... 3 Planlægning... 4 Kommunikationsplan... 4 Kanylemodellen... 4 Teknisk
Læs mereOpen Office Tekst
Side 1 af 17 Open Office 3.4.1 Tekst Vejledning ver. 1.07 Anvendes og udvikles løbende ved en på Præsthøjgården Side 2 af 17 Indholdsfortegnelse 1 Kom godt i gang... 4 1.1. Indledning... 4 1.2. Lidt om
Læs mereDRONNINGER (QUEENS) Opgave 1
DRONNINGER (QUEENS) I denne opgave vil vi beskæftige os med det såkaldte 8-dronningeproblem, hvor man skal placerede 8 dronninger på et 8 x 8 skakbræt, således at ingen af dronningerne kan slå hinanden.
Læs mereLAV GODE SØGNINGER I REX
LAV GODE SØGNINGER I REX I denne guide kan kan du læse om, hvordan du laver gode og præcise søgninger i REX. Når du søger i REX, skal du skrive et eller flere søgeord, fx forfatter og relevante ord i titlen
Læs mereGreenfoot En kort introduktion til Programmering og Objekt-Orientering
Greenfoot En kort introduktion til Programmering og Objekt-Orientering Greenfoot er et computer-program, som kan benyttes til at skrive andre computer-programmer, i et programmeringssprog kaldet Java.
Læs mere