OnLine Tester eller download Excel-fil med regular expression tester

I felterne neden for kan du indtaste en tekst og noget regular expressions - og herefter se om dit udtryk er korrekt. Længere nede kan du læse om, hvordan Regular Expressions er opbygget. Den lille tutorial skulle hjælpe dig godt på vej.

Skriv tekst her:                
Skriv regular expression her:     

Download Excel-fil med Regular Expression tester: Download Regular Expression Tester til Excel her. Excel-filen er i xlsm-format (med makroer) og er testet i Excel 2013. Filen er meget simpel. Grundlæggende 2 kolonner. 1 til tekst og 1 til Regular Expression-udtryk. I en 3. kolonne vises resultatet. Arket er låst, men der er lavet 1000 rækker, så du kan lave mange tests og gemme dem i samme fil inklusive egne kommentarer. Du kan også komme på kursus i Regular Expressions - Regulære udtryk.

Regular Expression Tester i Excel

Hvad er Regular Expressions?

Ved hjælp af Regular Expressions kan man lave meget avanceret validering af felter. Regular Expression benyttes inden for C#.net, php, JavaScript, XPath og mange andre sprog og teknologier. På dansk kaldes det Regulære Udtryk.

Grundlæggende set er Regular Expressions (RE) brugt til at beskrive et mønster, som efterfølgende kan bruges til at teste formatet af en tekst (streng). Det kan være smart, hvis man i et felt ønsker en bruger skal skrive et telefonnummer i formatet 4250 5040 - altså med mellemrum.

Regular Expressions kan f.eks. benyttes til:

  • Validering af CPR-nummer
  • Validering af telefonnummer
  • Validering af emailadresser
  • Søgning i tekster
  • og meget andet

Eksempel

Stort set alle programmeringssprog har en metode til at teste Regular Expressions. Oftest skal man i en metode eller funktion tilføje 2 parametre - en tekst (f.eks. et postnummer) - og et regulært udtryk, som f.eks. kunne være '\d{4}'. Teksten og det Regulære Udtryk holdes op mod hinanden og resultatet vil være enten true/sand eller false/falsk.

Hvordan man præcis skriver koden afhænger af programmeringssproget. Alle sprog jeg kan komme i tanke om kan arbejde med Regular Expressions. Nedenfor er et simpel eksempel i JavaScript.

var str = tekst_feks_postnummer;    
var patt = new RegExp(regulært udtryk);    
var res = patt.test(str);

resultatet af 'test' vil enten være true eller false. Selve syntaksen ovenfor hører til JavaScript. Men måden man laver er Regular Expression udtryk på er ens uanset hvilket programmeringssprog man benytter.

\b

ordgrænse

/\bZo/ matcher ZoomTek

/ek\b/ matcher ZoomTek

\B

ikke   ordgrænse

/\Bom/ matcher ZoomTek

\s

White   Space

/ZoomTek\sKurser/ matcher

ZoomTek   Kurser

\S

Ikke While Space

/ZoomTek\Surser/ matcher ZoomTek Kurser

\d

nummerisk   tal

/\d\d/ matcher 75

\D

Ikke   nummerisk

/\D\d/ matcher R6

\w

bogstav,   tal, underscore

/\w\w/ matcher R6

.   (punktum)

ikke   bogstav, tal, underscore

/\W\d\d/ matcher $65

^   (kineserhat)

starten   af en tekst

/^Zoom/ matcher ZoomTek

$   (dollar-tegn)

slutningen   af en tekst

/Tek$/ matcher ZoomTek

*

0 eller   flere

/R\d*/ matcher R, R46, R5 og R6

+

1 eller   flere

/R\d+/ matcher R5, R46,   R6

?

0 eller   1

/R\d?/ mactcher R og R5

{n}

præcis   n antal gange

/Zoom\D{3}/ matcher ZoomTek

{n,m}

mellem   m og n antal gange

/Z\D{2,6)/ matcher Zoo, Zulu og ZoomTek

 

Ovenstående karakterer kan kombineres i det uendelige og dermed skabe et helt unikt mønster:

[...]

Endhver   af de indeholdte karakterer

/Z[oai]m/ matcher Zom, Zam og Zim

[^...]

Ingen   af de indeholdte karakterer

/Z[^oai]m/ matcher Zum og Zem

(...)

En   bestemt sekvens af karakterer

/\D(oo)\D/ matcher Zoom,   look, good

\

Escape-karakter   til at medtage en af følgende karakterer:

^. [ $   ()|*+?{}\

/\?open/ matcher ?open

|

eller   (den ene eller den anden)

/R(4|5|6)/ mathcer R4, R5 og R6

-

imellem   (den ene eller den anden)

/\d[a-e]/ matcher 1a, ab, 1c, 1d   og 1e

 

Avancerede eksempler

Foregående eksempler var relativt simple. Nedenfor er mere avancerede eksempler på Regular Expression.

Forklaring

Kode

Sand

Falsk

Find   alle kombinationer af 2 mellemrum i en tekst

/s{2,}/g

ZoomTek Kurser

ZoomTek   Kurser

En tekst som har 1 eller flere mellemrum i starten

/^\s+/

" Hansen"

"Hansen"

Enhver   tekst eller ethvert tal

/^([a-zA-Z]|\d)$/

"S",   "u", "4"

"&",   "R6"

Alle   tal med et tegn foran

/^(\+|-)?\d+$/

+10,   -194

56,   234-

En   Streng der ender med et bogstav

/[a-zA-Z]$/

"Peter"   , "R6B"

"R6",   "566"

Valuta   i dollars eller pund

//\$|£)\d+/

$50

Kr 21

       

Et tal   i formatet

99-9ZZ-9999-ZZ

hvor 9   er et tal og Z et bogstav

/^\d{2}\-\d[A-Z]{2}\-\d{4}\-[A-Z]{2}$/

44-2RF-6666-XR

K4-21F-66S-S-03


Del denne artikel på

Mest læste sider

test5.png