Redigerer
Regulært uttrykk
Hopp til navigering
Hopp til søk
Advarsel:
Du er ikke innlogget. IP-adressen din vil bli vist offentlig om du redigerer. Hvis du
logger inn
eller
oppretter en konto
vil redigeringene dine tilskrives brukernavnet ditt, og du vil få flere andre fordeler.
Antispamsjekk.
Ikke
fyll inn dette feltet!
{{refforbedre|dato=2019}} Et '''regulært uttrykk''' brukes innen [[programmering]] og er en [[streng (informatikk)|streng]] som beskriver et sett av strenger – et mønster – som følger gitte [[syntaks]]regler. Regulære uttrykk utviklet seg fra teorien om [[Regulært språk|regulære språk]]. Regulære uttrykk brukes i mange [[tekstbehandler]]e og verktøy for å søke etter og manipulere tekst basert på gitte mønstre. I tillegg er det en rekke [[programmeringsspråk]] som støtter regulære uttrykk. Språkene [[C#]], [[Java (programmeringsspråk)|Java]], [[JavaScript]], [[Perl]], [[PHP]], [[Python]] og [[Ruby]] understøtter regulære uttrykk, med noe variasjon i hva som implementeres mellom språkene. Språket Perl ble utviklet med regulære uttrykk som en sentral komponent i språket, og mange andre språk har lånt fra Perl ved å implementere støtte for biblioteket PCRE (Perl-compliant Regular Expressions). JavaScript mangler "lookbehind"-støtte, men dette kan komme med i en fremtidig versjon av JavaScript (EcmaScript 2016), da det er lagt inn forslag for å legge til slik funksjonalitet. I tillegg mangler JavaScript en god del attråverdig [[syntaktisk sukker]] man finner i Perl som gjør det enklere å jobbe med kode som gjør utstrakt bruk av regulære uttrykk, men mesteparten av dette kan nå enkelt tilføyes etter behov ved å benytte biblioteket XRegExp<ref>{{Kilde www|url = http://xregexp.com/|tittel = XRegExp|besøksdato = 2016-01-03|forfattere = Jeff Atwood|dato = |forlag = }}</ref>. == Eksempel på regulært uttrykk i JavaScript == I dette eksemplet benyttes et regulært uttrykk i programmeringsspråket [[JavaScript]] for å fjerne emneknagger fra en tekststreng. Funksjonen som benyttes heter replace og bytter ut alle forekomster av et mønster med et nytt mønster i en tekststreng. JavaScript angir regulære uttrykk mellom to skråstreker (/ /), og parametere, som endrer visse egenskaper ved uttrykket, kan angis rett etter den avsluttende skråstreken. <syntaxhighlight lang="javascript"> /************************************************************************** Variabelen 'tekst' inneholder en tekst med emneknagger (#). Vi ønsker ved hjelp av et regulært uttrykk å fjerne alle emneknagger fra teksten. ***************************************************************************/ var tekst = "#Regulære uttrykk er utrolig #kult!"; /*********************************************************************** * /#(\S)/g = det regulære uttrykket * * Argument 1 * / .. / = definerer det regulære uttrykket * # = alle ord vi ønsker å endre starter med en slik emneknagg * ( .. ) = definerer den delen av strengen vi ønsker å ta vare på * \S = hvilken som helst sekvens av tegn som ikke er mellomrom * g = gjennomfør endringen på alle forekomster av uttrykket (g = "global") * * Argument 2 * $1 = henter ut verdien fra parentesene ( ) definert over *************************************************************************/ tekst = tekst.replace(/#(\S)/g, "$1"); /** "Regulære uttrykk er utrolig kult!" skrives til konsollen **/ console.log(tekst); </syntaxhighlight> == Referanser == <references /> {{Autoritetsdata}} [[Kategori:Programmering]] [[Kategori:Programmeringselementer]] [[Kategori:Teoretisk informatikk]] [[Kategori:Formelle språk]]
Redigeringsforklaring:
Merk at alle bidrag til Wikisida.no anses som frigitt under Creative Commons Navngivelse-DelPåSammeVilkår (se
Wikisida.no:Opphavsrett
for detaljer). Om du ikke vil at ditt materiale skal kunne redigeres og distribueres fritt må du ikke lagre det her.
Du lover oss også at du har skrevet teksten selv, eller kopiert den fra en kilde i offentlig eie eller en annen fri ressurs.
Ikke lagre opphavsrettsbeskyttet materiale uten tillatelse!
Avbryt
Redigeringshjelp
(åpnes i et nytt vindu)
Maler som brukes på denne siden:
Mal:Amboks
(
rediger
)
Mal:Autoritetsdata
(
rediger
)
Mal:ISOtilNorskdato
(
rediger
)
Mal:Kilde www
(
rediger
)
Mal:Refforbedre
(
rediger
)
Modul:Arguments
(
rediger
)
Modul:Citation/CS1
(
rediger
)
Modul:Citation/CS1/COinS
(
rediger
)
Modul:Citation/CS1/Configuration
(
rediger
)
Modul:Citation/CS1/Date validation
(
rediger
)
Modul:Citation/CS1/Identifiers
(
rediger
)
Modul:Citation/CS1/Utilities
(
rediger
)
Modul:Citation/CS1/Whitelist
(
rediger
)
Modul:External links
(
rediger
)
Modul:External links/conf
(
rediger
)
Modul:External links/conf/Autoritetsdata
(
rediger
)
Modul:Genitiv
(
rediger
)
Modul:ISOtilNorskdato
(
rediger
)
Modul:Message box
(
rediger
)
Modul:Message box/ambox.css
(
rediger
)
Modul:Message box/configuration
(
rediger
)
Modul:Yesno
(
rediger
)
Denne siden er medlem av 2 skjulte kategorier:
Kategori:Alle artikler som trenger flere eller bedre referanser
Kategori:Artikler som trenger flere eller bedre referanser 2019
Navigasjonsmeny
Personlige verktøy
Ikke logget inn
Brukerdiskusjon
Bidrag
Opprett konto
Logg inn
Navnerom
Side
Diskusjon
norsk bokmål
Visninger
Les
Rediger
Rediger kilde
Vis historikk
Mer
Navigasjon
Forside
Siste endringer
Tilfeldig side
Hjelp til MediaWiki
Verktøy
Lenker hit
Relaterte endringer
Spesialsider
Sideinformasjon