Skip to content
Tilbage til toppen

# Regulære udtryk

Regulære udtryk beskriver mønstre i strenge, der kan bruges til at bestemme, om et givet mønster forekommer i en tekst eller ej.

I TreeSize kan regulære udtryk bruges til at finde specifikke filer og / eller mapper, der matcher de kriterier, der er angivet af regulære udtryk. En liste over specielle tegn understøttes.

Følgende tabel viser nogle af de mest anvendte syntakser og giver et par eksempler:

Udtryk | Syntaks | Beskrivelse | Eksempel
--- | --- | --- | ---
Enhver karakter | `.` | Matcher enhver enkelt karakter undtagen et linjeskift. | `a.o` matcher »aro« i »around« og »abo« i »about«, men ikke »acro« i »across«.
Nul eller flere | `*` | Matcher nul eller flere forekomster af det foregående udtryk og laver alle mulige matcher. | `a*b` matcher »b« i »bat« og »ab« i »about«. `e.*e` matcher ordet »enterprise«.
Én eller flere | `+` | Matcher mindst én forekomst af det foregående udtryk. | `ac+` matcher ord, der indeholder bogstavet »a« og mindst én instans af »c«, såsom »race« og »ace«. `a.+s` matcher ordet »access«.
Start på streng | `^` | Matcher starten af en streng. | `^[0-9]` matcher strenge, der starter med et ciffer.
Slutningen af strengen | `$` | Matcher slutningen af en streng. | `exe$` matcher strenge, der ender med »exe«.
Begyndelsen af ord | `[[:<:]]` | Matcher kun når et ord starter på dette punkt i teksten. | `[[:<:]]in` matcher ord som »inside« og »into«, der begynder med bogstaverne »in«.
Slutningen af ord | `[[:>:]]` | Matcher kun når et ord slutter på dette punkt i teksten. | `ss[[:>:]]` matcher ord som »across« og »loss«, der ender med bogstaverne »ss«.
Enhver enkelt karakter i sættet | `[]` | Matcher enhver af karaktererne i []. For at specificere et interval af karakterer, angiv de startende og afsluttende karakterer adskilt af et bindestreg (-), som i [a-z]. | `be[n-t]` matcher »bet« i »between«, »ben« i »beneath«, og »bes« i »beside«, men ikke »bel« i »below«.
Enhver enkelt karakter, der ikke er i sættet | `[^...]` | Matcher enhver karakter, der ikke er i sættet af karakterer, der følger efter `^`. | `be[^n-t]` matcher »bef« i »before«, »beh« i »behind«, og »bel« i »below«, men ikke »ben« i »beneath«.
Eller | `|` | Matcher enten udtrykket før eller det efter OR-symbolet (|). Bruges hovedsageligt i en gruppe. | `(sponge|mud)` matcher »sponge bath« og »mud bath«.
Escape-tegn | `\` | Matcher det tegn, der følger efter backslashen (`\`) som et litteralt tegn. Dette gør det muligt at finde de tegn, der bruges i regulær udtryksnotation, såsom `{` og `^`. | `\^` søger efter `^`-tegnet.
Gentag n gange | `{n}` | Matcher n forekomster af det forudgående udtryk. | `[0-9]{4}` matcher enhver 4-cifret sekvens.
Gruppering | `()` | Lader dig gruppere et sæt af udtryk sammen. Hvis du vil søge efter to forskellige udtryk i en enkelt søgning, kan du bruge grupperingsudtrykket til at kombinere dem. | Hvis du vil søge efter `[a-z][1-3]` eller `[0-9][a-z]`, ville du kombinere dem: `([a-z][1-3])|([0-9][a-z])`.

## Flere eksempler

Regulært udtryk | Brugssag
--- | ---
`[0-9]` eller `\d` | Find all files/folders with mindst ét tal i deres navn.
`a|b` | Find alle filer/mapper, der indeholder »a« eller »b« i deres navn.
`[^(A-Za-z)]` | Find alle filer/mapper, der indeholder mindst ét tegn i deres navn, som ikke er i området A-Z eller a-z.
`^E[0-9]{7}$` | Find alle filer/mapper, som starter med et »E« efterfulgt af præcis 7 cifre.
`[A-Za-z]:\\([^\\]+\\){2,4}[^\\]+$` | Find alle filer/mapper med en mappedybde på mindst 2 og højst 4.
`[^\x00-\x7F]` | Find alle filer/mapper med ugyldige ASCII karakterer.
`[^\P{C}]` | Find alle filer/mapper med Unicode-tegn, som ikke kan udskrives.
`[\xA0]` | Find alle fil-/mappenavne, der indeholder det ikke-brydelige mellemrumstegn (Unicode NOBR, U+00A0) i stedet for et normalt mellemrumstegn.
`[~\""#%&\*\:<>\?\/\\{|}]` | Find alle fil- og mappenavne, der indeholder tegn, der er ugyldige på SharePoint-servere.
`^\s+.*` | Find alle filer og mapper med et foranstillet mellemrum.
`\s+(\.[^.]+)$` | Find filer med en udvidelse, der har et efterfølgende mellemrum i slutningen af deres navn.
`.*\s+$` | Find mapper med et efterfølgende mellemrum i slutningen af deres navn.

## Værktøjer til at oprette regulære udtryk

https://regex101.com/ (online)

http://regexpal.com/ (online)

http://sourceforge.net/projects/regexpeditor/ (download)

http://sourceforge.net/projects/regextester/ (download)

http://sourceforge.net/projects/regaxe/ (downloade)