Avatar billede jakobdo Ekspert
13. september 2006 - 10:01 Der er 25 kommentarer og
1 løsning

Matche streng med vildcards

Kan man lave en regexp, der skal matche tegn i bestemt rækkefølge, men inden for en given længde?

F.eks.
F.eks. vil regexp: JAKOBDO matche JAKOBDO
Men hvordan laver man noget som matcher:
J_A K-O..BD_ -O

Altså det jeg ønsker er at kunne matche J efterfulgt at alt muligt A alt muligt K osv...
Men det skal matches inden for f.eks. en længde af 15 tegn.
Kan man det i regexp?
Avatar billede spyrodrag Nybegynder
13. september 2006 - 10:54 #1
Hej Jakob.

Så vidt jeg husker, så kan man skrive . (for hvilket som helst bogstav) og * for at der må komme uendelig af dem.

J.*A.*K.*O.*B.*D.*O

Jeg tror umiddelbart at dette er løsningen - desværre uden mulighed for at teste det selv.

Venlig hilsen,
Martin.
Avatar billede nielle Nybegynder
13. september 2006 - 11:02 #2
Den med længden klare man nemmest ved at spørge på længden af strengen. Det er regexp ikke super godt til.

Mønsteret ville jeg lave sådan:

J.*?A.*?K.*?O.*?B.*?D.*?O

- eller:

^J.*?A.*?K.*?O.*?B.*?D.*?O$

Hvis det der skal matches på indgår i en større tekst, kan du matche først, og så bagefter aflæse længden på det matchede.
Avatar billede jakobdo Ekspert
13. september 2006 - 11:02 #3
Det er en løsning, men det der vil også matche:

Jens og Anna Kom for sent Og Bo Dræbte Olsen
Det jeg ønsker, er at begrænse inden for 15 eller 20 tegn f.eks.
Noget i stil med: J.*A.*K.*O.*B.*D.*O.*{0,15}
Altså Fra J til O må der ikke være mere end 0,15 tegn.
0 vil aldrig kunne være aktuelt, da jakobdo minimum er 7, så 7,15 måske!
Avatar billede jakobdo Ekspert
13. september 2006 - 11:03 #4
Jeg ved jeg kan tjekke længden inden, men ønskede en løsning i regexp.
Kan man virkelig ikke det?
Avatar billede nielle Nybegynder
13. september 2006 - 11:27 #5
Det kan muligvis lade sig gøre i en regexp, men det vil blive en monster-kompliceret en.

Problemet er at det ikke er så nemt at skale sammenhænge mellem de forskellige ".*?"-led, og det har du netop brug for hvis at du ønsker at lægge en binding på hvor mange tegn de må matche tilsammen.
Avatar billede jakobdo Ekspert
13. september 2006 - 11:52 #6
Nielle: Er det noget du kan lave?
Avatar billede nielle Nybegynder
13. september 2006 - 11:57 #7
Jeg kan da godt pusle med det, men det er langt fra noget som jeg vil love at jeg kan lave (som i "har evnen til" frem for "som har lysten til").

Hvis det var til mig selv, ville jeg nu aldrig drømme om at lave den del der har med længde i regexp. Det er simpelthen ikke der at regexp's force ligger.

Jeg kunne samtidigt forestille mig at det faktisk var temmelig tungt at lave det i regexp. Med alt det backtracking der ville blive tale om, kunne det meget nemt blive en løsning som kunne bringe en kraftig PC i knæ!
Avatar billede jokkejensen Novice
13. september 2006 - 12:04 #8
kan man ikke bare køre alle matchene igennem en gang til..

altså først : "J.*A.*C ..."

og herefter : ".{7,12}"

/JJ
Avatar billede jakobdo Ekspert
13. september 2006 - 12:39 #9
Det er muligt, men jeg kan ikke helt finde ud af at lave begrænsningen på.
Hvis jeg laver:
/J.*A.*K.*O.*B.*D.*O/
Den vil matche: J_A K-O..BD_ -O
Men den vil også matche:
Jens og Anna Kom for sent Og Bo Dræbte Olsen
Derfor skal jeg kunne sige: {7,20}
Dermed vil den kun matche: J_A K-O..BD_ -O
Avatar billede nielle Nybegynder
13. september 2006 - 12:49 #10
Hvad er det for et programmeringssprog det skal laves i?
Avatar billede jakobdo Ekspert
13. september 2006 - 12:58 #11
Det kan vel gøre lige meget? :o)
En regexp er vel regexp?
Jeg ved php kan lave: strlen($tekst).
Men her snakker vi ren regexp.
Avatar billede nielle Nybegynder
13. september 2006 - 13:17 #12
Næh-nej!

Der er *meget* forskel på hvad man kan gøre i de forskellige "regexp-smagsvarianter". Prøv blot at sammenligne ereg vs. preg i PHP. Eller RegExp i VB6 vs. Regex i VB.Net ... du er langt bedre stillet i VB.Net (og dermed også i ASP.Net vs. ASP).

Der er selvfølgelig en fælles kerne, men lige så snart at tingene begynder et blive en smule avanceret er der vidt forskel på om det er understøttet af den aktuelle regex-motor, i hvor stor grad det er understøttet, ja selv syntaksen kan faktisk variere i nogle tilfælde.

For et helt ekstremt tilfælde, så prøv at finde ud af hvordan MySQL-folkene implementere \b:

http://dev.mysql.com/doc/refman/5.1/en/regexp.html

Faktisk synes jeg at det er lidt af en misforståelse at Eksperten har en kategori som hedder Reg.Exp. eftersom at man hurtigt kommer til at skylle spørge ind til programmeringssproget når der snakkes mere avancerede features. :^)
Avatar billede jakobdo Ekspert
13. september 2006 - 13:21 #13
Ok, så blev jeg også klogere i dag! :o)
Nu har jeg noget som næsten virker:

'/J.{0,3}A.{0,3}K.{0,3}O.{0,3}B.{0,3}D.{0,3}O/'
Mit problem er bare det vil matche:
J_-_A_-_K osv...
Men det vil fejle på:
JAKOB_-_-_DO
Så det optimale ville være noget i stil med:
'/(J.*A.*K.*O.*B.*D.*O){7,15}/' men det virker desværre ikke.
Avatar billede jokkejensen Novice
13. september 2006 - 13:32 #14
nej det er desværre ikke muligt senere at sætte begrænsning på antallet af ".*"
Avatar billede jakobdo Ekspert
13. september 2006 - 14:56 #15
PS: Det er Perl regexp enginen som bruges.
Avatar billede nielle Nybegynder
13. september 2006 - 19:28 #16
Spørgsmål 1) Når du skriver "Perl regexp" går jeg ud fra at du mener at du leder efter en løsning i perl? For preg-funktionerne i PHP kan nemlig også godt siges at være Perl RegExp'er (selv om der er forskelle).

Spørgsmål 2) Ud fra dine eksempler ser det ud til at det godt kan være tegn efter det sidste O. Er det bare dit eksempel, eller er det også sådan i virkeligheden? Kan der så også være noget foran det indledende J?

Spørgsmål 3) Hvad er det lige der er så specielt ved dit problem, at det ikke fungere at teste længden på det matchede bagefter?
Avatar billede jakobdo Ekspert
14. september 2006 - 08:16 #17
1: SpamAssassin
2: Ja, der kan være tekst foran J og bagefter O.
3: SpamAssassin Rule.
Avatar billede nielle Nybegynder
14. september 2006 - 18:54 #18
Jeg kunne ikke dy mig. Denne her løser i princippet dit problem, men jeg har stærkt på fornemmelsen at den er totalt ubruglig i praksis:

(JAKOBD.{8}O|JAKOB.D.{7}O|JAKOB.{2}D.{6}O|JAKOB.{3}D.{5}O|JAKOB.{4}D.{4}O|JAKOB.{5}D.{3}O|JAKOB.{6}D.{2}O|JAKOB.{7}D.O|JAKOB.{8}DO|JAKO.BD.{7}O|JAKO.B.D.{6}O|JAKO.B.{2}D.{5}O|JAKO.B.{3}D.{4}O|JAKO.B.{4}D.{3}O|JAKO.B.{5}D.{2}O|JAKO.B.{6}D.O|JAKO.B.{7}DO|JAKO.{2}BD.{6}O|JAKO.{2}B.D.{5}O|JAKO.{2}B.{2}D.{4}O|JAKO.{2}B.{3}D.{3}O|JAKO.{2}B.{4}D.{2}O|JAKO.{2}B.{5}D.O|JAKO.{2}B.{6}DO|JAKO.{3}BD.{5}O|JAKO.{3}B.D.{4}O|JAKO.{3}B.{2}D.{3}O|JAKO.{3}B.{3}D.{2}O|JAKO.{3}B.{4}D.O|JAKO.{3}B.{5}DO|JAKO.{4}BD.{4}O|JAKO.{4}B.D.{3}O|JAKO.{4}B.{2}D.{2}O|JAKO.{4}B.{3}D.O|JAKO.{4}B.{4}DO|JAKO.{5}BD.{3}O|JAKO.{5}B.D.{2}O|JAKO.{5}B.{2}D.O|JAKO.{5}B.{3}DO|JAKO.{6}BD.{2}O|JAKO.{6}B.D.O|JAKO.{6}B.{2}DO|JAKO.{7}BD.O|JAKO.{7}B.DO|JAKO.{8}BDO|JAK.OBD.{7}O|JAK.OB.D.{6}O|JAK.OB.{2}D.{5}O|JAK.OB.{3}D.{4}O|JAK.OB.{4}D.{3}O|JAK.OB.{5}D.{2}O|JAK.OB.{6}D.O|JAK.OB.{7}DO|JAK.O.BD.{6}O|JAK.O.B.D.{5}O|JAK.O.B.{2}D.{4}O|JAK.O.B.{3}D.{3}O|JAK.O.B.{4}D.{2}O|JAK.O.B.{5}D.O|JAK.O.B.{6}DO|JAK.O.{2}BD.{5}O|JAK.O.{2}B.D.{4}O|JAK.O.{2}B.{2}D.{3}O|JAK.O.{2}B.{3}D.{2}O|JAK.O.{2}B.{4}D.O|JAK.O.{2}B.{5}DO|JAK.O.{3}BD.{4}O|JAK.O.{3}B.D.{3}O|JAK.O.{3}B.{2}D.{2}O|JAK.O.{3}B.{3}D.O|JAK.O.{3}B.{4}DO|JAK.O.{4}BD.{3}O|JAK.O.{4}B.D.{2}O|JAK.O.{4}B.{2}D.O|JAK.O.{4}B.{3}DO|JAK.O.{5}BD.{2}O|JAK.O.{5}B.D.O|JAK.O.{5}B.{2}DO|JAK.O.{6}BD.O|JAK.O.{6}B.DO|JAK.O.{7}BDO|JAK.{2}OBD.{6}O|JAK.{2}OB.D.{5}O|JAK.{2}OB.{2}D.{4}O|JAK.{2}OB.{3}D.{3}O|JAK.{2}OB.{4}D.{2}O|JAK.{2}OB.{5}D.O|JAK.{2}OB.{6}DO|JAK.{2}O.BD.{5}O|JAK.{2}O.B.D.{4}O|JAK.{2}O.B.{2}D.{3}O|JAK.{2}O.B.{3}D.{2}O|JAK.{2}O.B.{4}D.O|JAK.{2}O.B.{5}DO|JAK.{2}O.{2}BD.{4}O|JAK.{2}O.{2}B.D.{3}O|JAK.{2}O.{2}B.{2}D.{2}O|JAK.{2}O.{2}B.{3}D.O|JAK.{2}O.{2}B.{4}DO|JAK.{2}O.{3}BD.{3}O|JAK.{2}O.{3}B.D.{2}O|JAK.{2}O.{3}B.{2}D.O|JAK.{2}O.{3}B.{3}DO|JAK.{2}O.{4}BD.{2}O|JAK.{2}O.{4}B.D.O|JAK.{2}O.{4}B.{2}DO|JAK.{2}O.{5}BD.O|JAK.{2}O.{5}B.DO|JAK.{2}O.{6}BDO|JAK.{3}OBD.{5}O|JAK.{3}OB.D.{4}O|JAK.{3}OB.{2}D.{3}O|JAK.{3}OB.{3}D.{2}O|JAK.{3}OB.{4}D.O|JAK.{3}OB.{5}DO|JAK.{3}O.BD.{4}O|JAK.{3}O.B.D.{3}O|JAK.{3}O.B.{2}D.{2}O|JAK.{3}O.B.{3}D.O|JAK.{3}O.B.{4}DO|JAK.{3}O.{2}BD.{3}O|JAK.{3}O.{2}B.D.{2}O|JAK.{3}O.{2}B.{2}D.O|JAK.{3}O.{2}B.{3}DO|JAK.{3}O.{3}BD.{2}O|JAK.{3}O.{3}B.D.O|JAK.{3}O.{3}B.{2}DO|JAK.{3}O.{4}BD.O|JAK.{3}O.{4}B.DO|JAK.{3}O.{5}BDO|JAK.{4}OBD.{4}O|JAK.{4}OB.D.{3}O|JAK.{4}OB.{2}D.{2}O|JAK.{4}OB.{3}D.O|JAK.{4}OB.{4}DO|JAK.{4}O.BD.{3}O|JAK.{4}O.B.D.{2}O|JAK.{4}O.B.{2}D.O|JAK.{4}O.B.{3}DO|JAK.{4}O.{2}BD.{2}O|JAK.{4}O.{2}B.D.O|JAK.{4}O.{2}B.{2}DO|JAK.{4}O.{3}BD.O|JAK.{4}O.{3}B.DO|JAK.{4}O.{4}BDO|JAK.{5}OBD.{3}O|JAK.{5}OB.D.{2}O|JAK.{5}OB.{2}D.O|JAK.{5}OB.{3}DO|JAK.{5}O.BD.{2}O|JAK.{5}O.B.D.O|JAK.{5}O.B.{2}DO|JAK.{5}O.{2}BD.O|JAK.{5}O.{2}B.DO|JAK.{5}O.{3}BDO|JAK.{6}OBD.{2}O|JAK.{6}OB.D.O|JAK.{6}OB.{2}DO|JAK.{6}O.BD.O|JAK.{6}O.B.DO|JAK.{6}O.{2}BDO|JAK.{7}OBD.O|JAK.{7}OB.DO|JAK.{7}O.BDO|JAK.{8}OBDO|JA.KOBD.{7}O|JA.KOB.D.{6}O|JA.KOB.{2}D.{5}O|JA.KOB.{3}D.{4}O|JA.KOB.{4}D.{3}O|JA.KOB.{5}D.{2}O|JA.KOB.{6}D.O|JA.KOB.{7}DO|JA.KO.BD.{6}O|JA.KO.B.D.{5}O|JA.KO.B.{2}D.{4}O|JA.KO.B.{3}D.{3}O|JA.KO.B.{4}D.{2}O|JA.KO.B.{5}D.O|JA.KO.B.{6}DO|JA.KO.{2}BD.{5}O|JA.KO.{2}B.D.{4}O|JA.KO.{2}B.{2}D.{3}O|JA.KO.{2}B.{3}D.{2}O|JA.KO.{2}B.{4}D.O|JA.KO.{2}B.{5}DO|JA.KO.{3}BD.{4}O|JA.KO.{3}B.D.{3}O|JA.KO.{3}B.{2}D.{2}O|JA.KO.{3}B.{3}D.O|JA.KO.{3}B.{4}DO|JA.KO.{4}BD.{3}O|JA.KO.{4}B.D.{2}O|JA.KO.{4}B.{2}D.O|JA.KO.{4}B.{3}DO|JA.KO.{5}BD.{2}O|JA.KO.{5}B.D.O|JA.KO.{5}B.{2}DO|JA.KO.{6}BD.O|JA.KO.{6}B.DO|JA.KO.{7}BDO|JA.K.OBD.{6}O|JA.K.OB.D.{5}O|JA.K.OB.{2}D.{4}O|JA.K.OB.{3}D.{3}O|JA.K.OB.{4}D.{2}O|JA.K.OB.{5}D.O|JA.K.OB.{6}DO|JA.K.O.BD.{5}O|JA.K.O.B.D.{4}O|JA.K.O.B.{2}D.{3}O|JA.K.O.B.{3}D.{2}O|JA.K.O.B.{4}D.O|JA.K.O.B.{5}DO|JA.K.O.{2}BD.{4}O|JA.K.O.{2}B.D.{3}O|JA.K.O.{2}B.{2}D.{2}O|JA.K.O.{2}B.{3}D.O|JA.K.O.{2}B.{4}DO|JA.K.O.{3}BD.{3}O|JA.K.O.{3}B.D.{2}O|JA.K.O.{3}B.{2}D.O|JA.K.O.{3}B.{3}DO|JA.K.O.{4}BD.{2}O|JA.K.O.{4}B.D.O|JA.K.O.{4}B.{2}DO|JA.K.O.{5}BD.O|JA.K.O.{5}B.DO|JA.K.O.{6}BDO|JA.K.{2}OBD.{5}O|JA.K.{2}OB.D.{4}O|JA.K.{2}OB.{2}D.{3}O|JA.K.{2}OB.{3}D.{2}O|JA.K.{2}OB.{4}D.O|JA.K.{2}OB.{5}DO|JA.K.{2}O.BD.{4}O|JA.K.{2}O.B.D.{3}O|JA.K.{2}O.B.{2}D.{2}O|JA.K.{2}O.B.{3}D.O|JA.K.{2}O.B.{4}DO|JA.K.{2}O.{2}BD.{3}O|JA.K.{2}O.{2}B.D.{2}O|JA.K.{2}O.{2}B.{2}D.O|JA.K.{2}O.{2}B.{3}DO|JA.K.{2}O.{3}BD.{2}O|JA.K.{2}O.{3}B.D.O|JA.K.{2}O.{3}B.{2}DO|JA.K.{2}O.{4}BD.O|JA.K.{2}O.{4}B.DO|JA.K.{2}O.{5}BDO|JA.K.{3}OBD.{4}O|JA.K.{3}OB.D.{3}O|JA.K.{3}OB.{2}D.{2}O|JA.K.{3}OB.{3}D.O|JA.K.{3}OB.{4}DO|JA.K.{3}O.BD.{3}O|JA.K.{3}O.B.D.{2}O|JA.K.{3}O.B.{2}D.O|JA.K.{3}O.B.{3}DO|JA.K.{3}O.{2}BD.{2}O|JA.K.{3}O.{2}B.D.O|JA.K.{3}O.{2}B.{2}DO|JA.K.{3}O.{3}BD.O|JA.K.{3}O.{3}B.DO|JA.K.{3}O.{4}BDO|JA.K.{4}OBD.{3}O|JA.K.{4}OB.D.{2}O|JA.K.{4}OB.{2}D.O|JA.K.{4}OB.{3}DO|JA.K.{4}O.BD.{2}O|JA.K.{4}O.B.D.O|JA.K.{4}O.B.{2}DO|JA.K.{4}O.{2}BD.O|JA.K.{4}O.{2}B.DO|JA.K.{4}O.{3}BDO|JA.K.{5}OBD.{2}O|JA.K.{5}OB.D.O|JA.K.{5}OB.{2}DO|JA.K.{5}O.BD.O|JA.K.{5}O.B.DO|JA.K.{5}O.{2}BDO|JA.K.{6}OBD.O|JA.K.{6}OB.DO|JA.K.{6}O.BDO|JA.K.{7}OBDO|JA.{2}KOBD.{6}O|JA.{2}KOB.D.{5}O|JA.{2}KOB.{2}D.{4}O|JA.{2}KOB.{3}D.{3}O|JA.{2}KOB.{4}D.{2}O|JA.{2}KOB.{5}D.O|JA.{2}KOB.{6}DO|JA.{2}KO.BD.{5}O|JA.{2}KO.B.D.{4}O|JA.{2}KO.B.{2}D.{3}O|JA.{2}KO.B.{3}D.{2}O|JA.{2}KO.B.{4}D.O|JA.{2}KO.B.{5}DO|JA.{2}KO.{2}BD.{4}O|JA.{2}KO.{2}B.D.{3}O|JA.{2}KO.{2}B.{2}D.{2}O|JA.{2}KO.{2}B.{3}D.O|JA.{2}KO.{2}B.{4}DO|JA.{2}KO.{3}BD.{3}O|JA.{2}KO.{3}B.D.{2}O|JA.{2}KO.{3}B.{2}D.O|JA.{2}KO.{3}B.{3}DO|JA.{2}KO.{4}BD.{2}O|JA.{2}KO.{4}B.D.O|JA.{2}KO.{4}B.{2}DO|JA.{2}KO.{5}BD.O|JA.{2}KO.{5}B.DO|JA.{2}KO.{6}BDO|JA.{2}K.OBD.{5}O|JA.{2}K.OB.D.{4}O|JA.{2}K.OB.{2}D.{3}O|JA.{2}K.OB.{3}D.{2}O|JA.{2}K.OB.{4}D.O|JA.{2}K.OB.{5}DO|JA.{2}K.O.BD.{4}O|JA.{2}K.O.B.D.{3}O|JA.{2}K.O.B.{2}D.{2}O|JA.{2}K.O.B.{3}D.O|JA.{2}K.O.B.{4}DO|JA.{2}K.O.{2}BD.{3}O|JA.{2}K.O.{2}B.D.{2}O|JA.{2}K.O.{2}B.{2}D.O|JA.{2}K.O.{2}B.{3}DO|JA.{2}K.O.{3}BD.{2}O|JA.{2}K.O.{3}B.D.O|JA.{2}K.O.{3}B.{2}DO|JA.{2}K.O.{4}BD.O|JA.{2}K.O.{4}B.DO|JA.{2}K.O.{5}BDO|JA.{2}K.{2}OBD.{4}O|JA.{2}K.{2}OB.D.{3}O|JA.{2}K.{2}OB.{2}D.{2}O|JA.{2}K.{2}OB.{3}D.O|JA.{2}K.{2}OB.{4}DO|JA.{2}K.{2}O.BD.{3}O|JA.{2}K.{2}O.B.D.{2}O|JA.{2}K.{2}O.B.{2}D.O|JA.{2}K.{2}O.B.{3}DO|JA.{2}K.{2}O.{2}BD.{2}O|JA.{2}K.{2}O.{2}B.D.O|JA.{2}K.{2}O.{2}B.{2}DO|JA.{2}K.{2}O.{3}BD.O|JA.{2}K.{2}O.{3}B.DO|JA.{2}K.{2}O.{4}BDO|JA.{2}K.{3}OBD.{3}O|JA.{2}K.{3}OB.D.{2}O|JA.{2}K.{3}OB.{2}D.O|JA.{2}K.{3}OB.{3}DO|JA.{2}K.{3}O.BD.{2}O|JA.{2}K.{3}O.B.D.O|JA.{2}K.{3}O.B.{2}DO|JA.{2}K.{3}O.{2}BD.O|JA.{2}K.{3}O.{2}B.DO|JA.{2}K.{3}O.{3}BDO|JA.{2}K.{4}OBD.{2}O|JA.{2}K.{4}OB.D.O|JA.{2}K.{4}OB.{2}DO|JA.{2}K.{4}O.BD.O|JA.{2}K.{4}O.B.DO|JA.{2}K.{4}O.{2}BDO|JA.{2}K.{5}OBD.O|JA.{2}K.{5}OB.DO|JA.{2}K.{5}O.BDO|JA.{2}K.{6}OBDO|JA.{3}KOBD.{5}O|JA.{3}KOB.D.{4}O|JA.{3}KOB.{2}D.{3}O|JA.{3}KOB.{3}D.{2}O|JA.{3}KOB.{4}D.O|JA.{3}KOB.{5}DO|JA.{3}KO.BD.{4}O|JA.{3}KO.B.D.{3}O|JA.{3}KO.B.{2}D.{2}O|JA.{3}KO.B.{3}D.O|JA.{3}KO.B.{4}DO|JA.{3}KO.{2}BD.{3}O|JA.{3}KO.{2}B.D.{2}O|JA.{3}KO.{2}B.{2}D.O|JA.{3}KO.{2}B.{3}DO|JA.{3}KO.{3}BD.{2}O|JA.{3}KO.{3}B.D.O|JA.{3}KO.{3}B.{2}DO|JA.{3}KO.{4}BD.O|JA.{3}KO.{4}B.DO|JA.{3}KO.{5}BDO|JA.{3}K.OBD.{4}O|JA.{3}K.OB.D.{3}O|JA.{3}K.OB.{2}D.{2}O|JA.{3}K.OB.{3}D.O|JA.{3}K.OB.{4}DO|JA.{3}K.O.BD.{3}O|JA.{3}K.O.B.D.{2}O|JA.{3}K.O.B.{2}D.O|JA.{3}K.O.B.{3}DO|JA.{3}K.O.{2}BD.{2}O|JA.{3}K.O.{2}B.D.O|JA.{3}K.O.{2}B.{2}DO|JA.{3}K.O.{3}BD.O|JA.{3}K.O.{3}B.DO|JA.{3}K.O.{4}BDO|JA.{3}K.{2}OBD.{3}O|JA.{3}K.{2}OB.D.{2}O|JA.{3}K.{2}OB.{2}D.O|JA.{3}K.{2}OB.{3}DO|JA.{3}K.{2}O.BD.{2}O|JA.{3}K.{2}O.B.D.O|JA.{3}K.{2}O.B.{2}DO|JA.{3}K.{2}O.{2}BD.O|JA.{3}K.{2}O.{2}B.DO|JA.{3}K.{2}O.{3}BDO|JA.{3}K.{3}OBD.{2}O|JA.{3}K.{3}OB.D.O|JA.{3}K.{3}OB.{2}DO|JA.{3}K.{3}O.BD.O|JA.{3}K.{3}O.B.DO|JA.{3}K.{3}O.{2}BDO|JA.{3}K.{4}OBD.O|JA.{3}K.{4}OB.DO|JA.{3}K.{4}O.BDO|JA.{3}K.{5}OBDO|JA.{4}KOBD.{4}O|JA.{4}KOB.D.{3}O|JA.{4}KOB.{2}D.{2}O|JA.{4}KOB.{3}D.O|JA.{4}KOB.{4}DO|JA.{4}KO.BD.{3}O|JA.{4}KO.B.D.{2}O|JA.{4}KO.B.{2}D.O|JA.{4}KO.B.{3}DO|JA.{4}KO.{2}BD.{2}O|JA.{4}KO.{2}B.D.O|JA.{4}KO.{2}B.{2}DO|JA.{4}KO.{3}BD.O|JA.{4}KO.{3}B.DO|JA.{4}KO.{4}BDO|JA.{4}K.OBD.{3}O|JA.{4}K.OB.D.{2}O|JA.{4}K.OB.{2}D.O|JA.{4}K.OB.{3}DO|JA.{4}K.O.BD.{2}O|JA.{4}K.O.B.D.O|JA.{4}K.O.B.{2}DO|JA.{4}K.O.{2}BD.O|JA.{4}K.O.{2}B.DO|JA.{4}K.O.{3}BDO|JA.{4}K.{2}OBD.{2}O|JA.{4}K.{2}OB.D.O|JA.{4}K.{2}OB.{2}DO|JA.{4}K.{2}O.BD.O|JA.{4}K.{2}O.B.DO|JA.{4}K.{2}O.{2}BDO|JA.{4}K.{3}OBD.O|JA.{4}K.{3}OB.DO|JA.{4}K.{3}O.BDO|JA.{4}K.{4}OBDO|JA.{5}KOBD.{3}O|JA.{5}KOB.D.{2}O|JA.{5}KOB.{2}D.O|JA.{5}KOB.{3}DO|JA.{5}KO.BD.{2}O|JA.{5}KO.B.D.O|JA.{5}KO.B.{2}DO|JA.{5}KO.{2}BD.O|JA.{5}KO.{2}B.DO|JA.{5}KO.{3}BDO|JA.{5}K.OBD.{2}O|JA.{5}K.OB.D.O|JA.{5}K.OB.{2}DO|JA.{5}K.O.BD.O|JA.{5}K.O.B.DO|JA.{5}K.O.{2}BDO|JA.{5}K.{2}OBD.O|JA.{5}K.{2}OB.DO|JA.{5}K.{2}O.BDO|JA.{5}K.{3}OBDO|JA.{6}KOBD.{2}O|JA.{6}KOB.D.O|JA.{6}KOB.{2}DO|JA.{6}KO.BD.O|JA.{6}KO.B.DO|JA.{6}KO.{2}BDO|JA.{6}K.OBD.O|JA.{6}K.OB.DO|JA.{6}K.O.BDO|JA.{6}K.{2}OBDO|JA.{7}KOBD.O|JA.{7}KOB.DO|JA.{7}KO.BDO|JA.{7}K.OBDO|JA.{8}KOBDO|J.AKOBD.{7}O|J.AKOB.D.{6}O|J.AKOB.{2}D.{5}O|J.AKOB.{3}D.{4}O|J.AKOB.{4}D.{3}O|J.AKOB.{5}D.{2}O|J.AKOB.{6}D.O|J.AKOB.{7}DO|J.AKO.BD.{6}O|J.AKO.B.D.{5}O|J.AKO.B.{2}D.{4}O|J.AKO.B.{3}D.{3}O|J.AKO.B.{4}D.{2}O|J.AKO.B.{5}D.O|J.AKO.B.{6}DO|J.AKO.{2}BD.{5}O|J.AKO.{2}B.D.{4}O|J.AKO.{2}B.{2}D.{3}O|J.AKO.{2}B.{3}D.{2}O|J.AKO.{2}B.{4}D.O|J.AKO.{2}B.{5}DO|J.AKO.{3}BD.{4}O|J.AKO.{3}B.D.{3}O|J.AKO.{3}B.{2}D.{2}O|J.AKO.{3}B.{3}D.O|J.AKO.{3}B.{4}DO|J.AKO.{4}BD.{3}O|J.AKO.{4}B.D.{2}O|J.AKO.{4}B.{2}D.O|J.AKO.{4}B.{3}DO|J.AKO.{5}BD.{2}O|J.AKO.{5}B.D.O|J.AKO.{5}B.{2}DO|J.AKO.{6}BD.O|J.AKO.{6}B.DO|J.AKO.{7}BDO|J.AK.OBD.{6}O|J.AK.OB.D.{5}O|J.AK.OB.{2}D.{4}O|J.AK.OB.{3}D.{3}O|J.AK.OB.{4}D.{2}O|J.AK.OB.{5}D.O|J.AK.OB.{6}DO|J.AK.O.BD.{5}O|J.AK.O.B.D.{4}O|J.AK.O.B.{2}D.{3}O|J.AK.O.B.{3}D.{2}O|J.AK.O.B.{4}D.O|J.AK.O.B.{5}DO|J.AK.O.{2}BD.{4}O|J.AK.O.{2}B.D.{3}O|J.AK.O.{2}B.{2}D.{2}O|J.AK.O.{2}B.{3}D.O|J.AK.O.{2}B.{4}DO|J.AK.O.{3}BD.{3}O|J.AK.O.{3}B.D.{2}O|J.AK.O.{3}B.{2}D.O|J.AK.O.{3}B.{3}DO|J.AK.O.{4}BD.{2}O|J.AK.O.{4}B.D.O|J.AK.O.{4}B.{2}DO|J.AK.O.{5}BD.O|J.AK.O.{5}B.DO|J.AK.O.{6}BDO|J.AK.{2}OBD.{5}O|J.AK.{2}OB.D.{4}O|J.AK.{2}OB.{2}D.{3}O|J.AK.{2}OB.{3}D.{2}O|J.AK.{2}OB.{4}D.O|J.AK.{2}OB.{5}DO|J.AK.{2}O.BD.{4}O|J.AK.{2}O.B.D.{3}O|J.AK.{2}O.B.{2}D.{2}O|J.AK.{2}O.B.{3}D.O|J.AK.{2}O.B.{4}DO|J.AK.{2}O.{2}BD.{3}O|J.AK.{2}O.{2}B.D.{2}O|J.AK.{2}O.{2}B.{2}D.O|J.AK.{2}O.{2}B.{3}DO|J.AK.{2}O.{3}BD.{2}O|J.AK.{2}O.{3}B.D.O|J.AK.{2}O.{3}B.{2}DO|J.AK.{2}O.{4}BD.O|J.AK.{2}O.{4}B.DO|J.AK.{2}O.{5}BDO|J.AK.{3}OBD.{4}O|J.AK.{3}OB.D.{3}O|J.AK.{3}OB.{2}D.{2}O|J.AK.{3}OB.{3}D.O|J.AK.{3}OB.{4}DO|J.AK.{3}O.BD.{3}O|J.AK.{3}O.B.D.{2}O|J.AK.{3}O.B.{2}D.O|J.AK.{3}O.B.{3}DO|J.AK.{3}O.{2}BD.{2}O|J.AK.{3}O.{2}B.D.O|J.AK.{3}O.{2}B.{2}DO|J.AK.{3}O.{3}BD.O|J.AK.{3}O.{3}B.DO|J.AK.{3}O.{4}BDO|J.AK.{4}OBD.{3}O|J.AK.{4}OB.D.{2}O|J.AK.{4}OB.{2}D.O|J.AK.{4}OB.{3}DO|J.AK.{4}O.BD.{2}O|J.AK.{4}O.B.D.O|J.AK.{4}O.B.{2}DO|J.AK.{4}O.{2}BD.O|J.AK.{4}O.{2}B.DO|J.AK.{4}O.{3}BDO|J.AK.{5}OBD.{2}O|J.AK.{5}OB.D.O|J.AK.{5}OB.{2}DO|J.AK.{5}O.BD.O|J.AK.{5}O.B.DO|J.AK.{5}O.{2}BDO|J.AK.{6}OBD.O|J.AK.{6}OB.DO|J.AK.{6}O.BDO|J.AK.{7}OBDO|J.A.KOBD.{6}O|J.A.KOB.D.{5}O|J.A.KOB.{2}D.{4}O|J.A.KOB.{3}D.{3}O|J.A.KOB.{4}D.{2}O|J.A.KOB.{5}D.O|J.A.KOB.{6}DO|J.A.KO.BD.{5}O|J.A.KO.B.D.{4}O|J.A.KO.B.{2}D.{3}O|J.A.KO.B.{3}D.{2}O|J.A.KO.B.{4}D.O|J.A.KO.B.{5}DO|J.A.KO.{2}BD.{4}O|J.A.KO.{2}B.D.{3}O|J.A.KO.{2}B.{2}D.{2}O|J.A.KO.{2}B.{3}D.O|J.A.KO.{2}B.{4}DO|J.A.KO.{3}BD.{3}O|J.A.KO.{3}B.D.{2}O|J.A.KO.{3}B.{2}D.O|J.A.KO.{3}B.{3}DO|J.A.KO.{4}BD.{2}O|J.A.KO.{4}B.D.O|J.A.KO.{4}B.{2}DO|J.A.KO.{5}BD.O|J.A.KO.{5}B.DO|J.A.KO.{6}BDO|J.A.K.OBD.{5}O|J.A.K.OB.D.{4}O|J.A.K.OB.{2}D.{3}O|J.A.K.OB.{3}D.{2}O|J.A.K.OB.{4}D.O|J.A.K.OB.{5}DO|J.A.K.O.BD.{4}O|J.A.K.O.B.D.{3}O|J.A.K.O.B.{2}D.{2}O|J.A.K.O.B.{3}D.O|J.A.K.O.B.{4}DO|J.A.K.O.{2}BD.{3}O|J.A.K.O.{2}B.D.{2}O|J.A.K.O.{2}B.{2}D.O|J.A.K.O.{2}B.{3}DO|J.A.K.O.{3}BD.{2}O|J.A.K.O.{3}B.D.O|J.A.K.O.{3}B.{2}DO|J.A.K.O.{4}BD.O|J.A.K.O.{4}B.DO|J.A.K.O.{5}BDO|J.A.K.{2}OBD.{4}O|J.A.K.{2}OB.D.{3}O|J.A.K.{2}OB.{2}D.{2}O|J.A.K.{2}OB.{3}D.O|J.A.K.{2}OB.{4}DO|J.A.K.{2}O.BD.{3}O|J.A.K.{2}O.B.D.{2}O|J.A.K.{2}O.B.{2}D.O|J.A.K.{2}O.B.{3}DO|J.A.K.{2}O.{2}BD.{2}O|J.A.K.{2}O.{2}B.D.O|J.A.K.{2}O.{2}B.{2}DO|J.A.K.{2}O.{3}BD.O|J.A.K.{2}O.{3}B.DO|J.A.K.{2}O.{4}BDO|J.A.K.{3}OBD.{3}O|J.A.K.{3}OB.D.{2}O|J.A.K.{3}OB.{2}D.O|J.A.K.{3}OB.{3}DO|J.A.K.{3}O.BD.{2}O|J.A.K.{3}O.B.D.O|J.A.K.{3}O.B.{2}DO|J.A.K.{3}O.{2}BD.O|J.A.K.{3}O.{2}B.DO|J.A.K.{3}O.{3}BDO|J.A.K.{4}OBD.{2}O|J.A.K.{4}OB.D.O|J.A.K.{4}OB.{2}DO|J.A.K.{4}O.BD.O|J.A.K.{4}O.B.DO|J.A.K.{4}O.{2}BDO|J.A.K.{5}OBD.O|J.A.K.{5}OB.DO|J.A.K.{5}O.BDO|J.A.K.{6}OBDO|J.A.{2}KOBD.{5}O|J.A.{2}KOB.D.{4}O|J.A.{2}KOB.{2}D.{3}O|J.A.{2}KOB.{3}D.{2}O|J.A.{2}KOB.{4}D.O|J.A.{2}KOB.{5}DO|J.A.{2}KO.BD.{4}O|J.A.{2}KO.B.D.{3}O|J.A.{2}KO.B.{2}D.{2}O|J.A.{2}KO.B.{3}D.O|J.A.{2}KO.B.{4}DO|J.A.{2}KO.{2}BD.{3}O|J.A.{2}KO.{2}B.D.{2}O|J.A.{2}KO.{2}B.{2}D.O|J.A.{2}KO.{2}B.{3}DO|J.A.{2}KO.{3}BD.{2}O|J.A.{2}KO.{3}B.D.O|J.A.{2}KO.{3}B.{2}DO|J.A.{2}KO.{4}BD.O|J.A.{2}KO.{4}B.DO|J.A.{2}KO.{5}BDO|J.A.{2}K.OBD.{4}O|J.A.{2}K.OB.D.{3}O|J.A.{2}K.OB.{2}D.{2}O|J.A.{2}K.OB.{3}D.O|J.A.{2}K.OB.{4}DO|J.A.{2}K.O.BD.{3}O|J.A.{2}K.O.B.D.{2}O|J.A.{2}K.O.B.{2}D.O|J.A.{2}K.O.B.{3}DO|J.A.{2}K.O.{2}BD.{2}O|J.A.{2}K.O.{2}B.D.O|J.A.{2}K.O.{2}B.{2}DO|J.A.{2}K.O.{3}BD.O|J.A.{2}K.O.{3}B.DO|J.A.{2}K.O.{4}BDO|J.A.{2}K.{2}OBD.{3}O|J.A.{2}K.{2}OB.D.{2}O|J.A.{2}K.{2}OB.{2}D.O|J.A.{2}K.{2}OB.{3}DO|J.A.{2}K.{2}O.BD.{2}O|J.A.{2}K.{2}O.B.D.O|J.A.{2}K.{2}O.B.{2}DO|J.A.{2}K.{2}O.{2}BD.O|J.A.{2}K.{2}O.{2}B.DO|J.A.{2}K.{2}O.{3}BDO|J.A.{2}K.{3}OBD.{2}O|J.A.{2}K.{3}OB.D.O|J.A.{2}K.{3}OB.{2}DO|J.A.{2}K.{3}O.BD.O|J.A.{2}K.{3}O.B.DO|J.A.{2}K.{3}O.{2}BDO|J.A.{2}K.{4}OBD.O|J.A.{2}K.{4}OB.DO|J.A.{2}K.{4}O.BDO|J.A.{2}K.{5}OBDO|J.A.{3}KOBD.{4}O|J.A.{3}KOB.D.{3}O|J.A.{3}KOB.{2}D.{2}O|J.A.{3}KOB.{3}D.O|J.A.{3}KOB.{4}DO|J.A.{3}KO.BD.{3}O|J.A.{3}KO.B.D.{2}O|J.A.{3}KO.B.{2}D.O|J.A.{3}KO.B.{3}DO|J.A.{3}KO.{2}BD.{2}O|J.A.{3}KO.{2}B.D.O|J.A.{3}KO.{2}B.{2}DO|J.A.{3}KO.{3}BD.O|J.A.{3}KO.{3}B.DO|J.A.{3}KO.{4}BDO|J.A.{3}K.OBD.{3}O|J.A.{3}K.OB.D.{2}O|J.A.{3}K.OB.{2}D.O|J.A.{3}K.OB.{3}DO|J.A.{3}K.O.BD.{2}O|J.A.{3}K.O.B.D.O|J.A.{3}K.O.B.{2}DO|J.A.{3}K.O.{2}BD.O|J.A.{3}K.O.{2}B.DO|J.A.{3}K.O.{3}BDO|J.A.{3}K.{2}OBD.{2}O|J.A.{3}K.{2}OB.D.O|J.A.{3}K.{2}OB.{2}DO|J.A.{3}K.{2}O.BD.O|J.A.{3}K.{2}O.B.DO|J.A.{3}K.{2}O.{2}BDO|J.A.{3}K.{3}OBD.O|J.A.{3}K.{3}OB.DO|J.A.{3}K.{3}O.BDO|J.A.{3}K.{4}OBDO|J.A.{4}KOBD.{3}O|J.A.{4}KOB.D.{2}O|J.A.{4}KOB.{2}D.O|J.A.{4}KOB.{3}DO|J.A.{4}KO.BD.{2}O|J.A.{4}KO.B.D.O|J.A.{4}KO.B.{2}DO|J.A.{4}KO.{2}BD.O|J.A.{4}KO.{2}B.DO|J.A.{4}KO.{3}BDO|J.A.{4}K.OBD.{2}O|J.A.{4}K.OB.D.O|J.A.{4}K.OB.{2}DO|J.A.{4}K.O.BD.O|J.A.{4}K.O.B.DO|J.A.{4}K.O.{2}BDO|J.A.{4}K.{2}OBD.O|J.A.{4}K.{2}OB.DO|J.A.{4}K.{2}O.BDO|J.A.{4}K.{3}OBDO|J.A.{5}KOBD.{2}O|J.A.{5}KOB.D.O|J.A.{5}KOB.{2}DO|J.A.{5}KO.BD.O|J.A.{5}KO.B.DO|J.A.{5}KO.{2}BDO|J.A.{5}K.OBD.O|J.A.{5}K.OB.DO|J.A.{5}K.O.BDO|J.A.{5}K.{2}OBDO|J.A.{6}KOBD.O|J.A.{6}KOB.DO|J.A.{6}KO.BDO|J.A.{6}K.OBDO|J.A.{7}KOBDO|J.{2}AKOBD.{6}O|J.{2}AKOB.D.{5}O|J.{2}AKOB.{2}D.{4}O|J.{2}AKOB.{3}D.{3}O|J.{2}AKOB.{4}D.{2}O|J.{2}AKOB.{5}D.O|J.{2}AKOB.{6}DO|J.{2}AKO.BD.{5}O|J.{2}AKO.B.D.{4}O|J.{2}AKO.B.{2}D.{3}O|J.{2}AKO.B.{3}D.{2}O|J.{2}AKO.B.{4}D.O|J.{2}AKO.B.{5}DO|J.{2}AKO.{2}BD.{4}O|J.{2}AKO.{2}B.D.{3}O|J.{2}AKO.{2}B.{2}D.{2}O|J.{2}AKO.{2}B.{3}D.O|J.{2}AKO.{2}B.{4}DO|J.{2}AKO.{3}BD.{3}O|J.{2}AKO.{3}B.D.{2}O|J.{2}AKO.{3}B.{2}D.O|J.{2}AKO.{3}B.{3}DO|J.{2}AKO.{4}BD.{2}O|J.{2}AKO.{4}B.D.O|J.{2}AKO.{4}B.{2}DO|J.{2}AKO.{5}BD.O|J.{2}AKO.{5}B.DO|J.{2}AKO.{6}BDO|J.{2}AK.OBD.{5}O|J.{2}AK.OB.D.{4}O|J.{2}AK.OB.{2}D.{3}O|J.{2}AK.OB.{3}D.{2}O|J.{2}AK.OB.{4}D.O|J.{2}AK.OB.{5}DO|J.{2}AK.O.BD.{4}O|J.{2}AK.O.B.D.{3}O|J.{2}AK.O.B.{2}D.{2}O|J.{2}AK.O.B.{3}D.O|J.{2}AK.O.B.{4}DO|J.{2}AK.O.{2}BD.{3}O|J.{2}AK.O.{2}B.D.{2}O|J.{2}AK.O.{2}B.{2}D.O|J.{2}AK.O.{2}B.{3}DO|J.{2}AK.O.{3}BD.{2}O|J.{2}AK.O.{3}B.D.O|J.{2}AK.O.{3}B.{2}DO|J.{2}AK.O.{4}BD.O|J.{2}AK.O.{4}B.DO|J.{2}AK.O.{5}BDO|J.{2}AK.{2}OBD.{4}O|J.{2}AK.{2}OB.D.{3}O|J.{2}AK.{2}OB.{2}D.{2}O|J.{2}AK.{2}OB.{3}D.O|J.{2}AK.{2}OB.{4}DO|J.{2}AK.{2}O.BD.{3}O|J.{2}AK.{2}O.B.D.{2}O|J.{2}AK.{2}O.B.{2}D.O|J.{2}AK.{2}O.B.{3}DO|J.{2}AK.{2}O.{2}BD.{2}O|J.{2}AK.{2}O.{2}B.D.O|J.{2}AK.{2}O.{2}B.{2}DO|J.{2}AK.{2}O.{3}BD.O|J.{2}AK.{2}O.{3}B.DO|J.{2}AK.{2}O.{4}BDO|J.{2}AK.{3}OBD.{3}O|J.{2}AK.{3}OB.D.{2}O|J.{2}AK.{3}OB.{2}D.O|J.{2}AK.{3}OB.{3}DO|J.{2}AK.{3}O.BD.{2}O|J.{2}AK.{3}O.B.D.O|J.{2}AK.{3}O.B.{2}DO|J.{2}AK.{3}O.{2}BD.O|J.{2}AK.{3}O.{2}B.DO|J.{2}AK.{3}O.{3}BDO|J.{2}AK.{4}OBD.{2}O|J.{2}AK.{4}OB.D.O|J.{2}AK.{4}OB.{2}DO|J.{2}AK.{4}O.BD.O|J.{2}AK.{4}O.B.DO|J.{2}AK.{4}O.{2}BDO|J.{2}AK.{5}OBD.O|J.{2}AK.{5}OB.DO|J.{2}AK.{5}O.BDO|J.{2}AK.{6}OBDO|J.{2}A.KOBD.{5}O|J.{2}A.KOB.D.{4}O|J.{2}A.KOB.{2}D.{3}O|J.{2}A.KOB.{3}D.{2}O|J.{2}A.KOB.{4}D.O|J.{2}A.KOB.{5}DO|J.{2}A.KO.BD.{4}O|J.{2}A.KO.B.D.{3}O|J.{2}A.KO.B.{2}D.{2}O|J.{2}A.KO.B.{3}D.O|J.{2}A.KO.B.{4}DO|J.{2}A.KO.{2}BD.{3}O|J.{2}A.KO.{2}B.D.{2}O|J.{2}A.KO.{2}B.{2}D.O|J.{2}A.KO.{2}B.{3}DO|J.{2}A.KO.{3}BD.{2}O|J.{2}A.KO.{3}B.D.O|J.{2}A.KO.{3}B.{2}DO|J.{2}A.KO.{4}BD.O|J.{2}A.KO.{4}B.DO|J.{2}A.KO.{5}BDO|J.{2}A.K.OBD.{4}O|J.{2}A.K.OB.D.{3}O|J.{2}A.K.OB.{2}D.{2}O|J.{2}A.K.OB.{3}D.O|J.{2}A.K.OB.{4}DO|J.{2}A.K.O.BD.{3}O|J.{2}A.K.O.B.D.{2}O|J.{2}A.K.O.B.{2}D.O|J.{2}A.K.O.B.{3}DO|J.{2}A.K.O.{2}BD.{2}O|J.{2}A.K.O.{2}B.D.O|J.{2}A.K.O.{2}B.{2}DO|J.{2}A.K.O.{3}BD.O|J.{2}A.K.O.{3}B.DO|J.{2}A.K.O.{4}BDO|J.{2}A.K.{2}OBD.{3}O|J.{2}A.K.{2}OB.D.{2}O|J.{2}A.K.{2}OB.{2}D.O|J.{2}A.K.{2}OB.{3}DO|J.{2}A.K.{2}O.BD.{2}O|J.{2}A.K.{2}O.B.D.O|J.{2}A.K.{2}O.B.{2}DO|J.{2}A.K.{2}O.{2}BD.O|J.{2}A.K.{2}O.{2}B.DO|J.{2}A.K.{2}O.{3}BDO|J.{2}A.K.{3}OBD.{2}O|J.{2}A.K.{3}OB.D.O|J.{2}A.K.{3}OB.{2}DO|J.{2}A.K.{3}O.BD.O|J.{2}A.K.{3}O.B.DO|J.{2}A.K.{3}O.{2}BDO|J.{2}A.K.{4}OBD.O|J.{2}A.K.{4}OB.DO|J.{2}A.K.{4}O.BDO|J.{2}A.K.{5}OBDO|J.{2}A.{2}KOBD.{4}O|J.{2}A.{2}KOB.D.{3}O|J.{2}A.{2}KOB.{2}D.{2}O|J.{2}A.{2}KOB.{3}D.O|J.{2}A.{2}KOB.{4}DO|J.{2}A.{2}KO.BD.{3}O|J.{2}A.{2}KO.B.D.{2}O|J.{2}A.{2}KO.B.{2}D.O|J.{2}A.{2}KO.B.{3}DO|J.{2}A.{2}KO.{2}BD.{2}O|J.{2}A.{2}KO.{2}B.D.O|J.{2}A.{2}KO.{2}B.{2}DO|J.{2}A.{2}KO.{3}BD.O|J.{2}A.{2}KO.{3}B.DO|J.{2}A.{2}KO.{4}BDO|J.{2}A.{2}K.OBD.{3}O|J.{2}A.{2}K.OB.D.{2}O|J.{2}A.{2}K.OB.{2}D.O|J.{2}A.{2}K.OB.{3}DO|J.{2}A.{2}K.O.BD.{2}O|J.{2}A.{2}K.O.B.D.O|J.{2}A.{2}K.O.B.{2}DO|J.{2}A.{2}K.O.{2}BD.O|J.{2}A.{2}K.O.{2}B.DO|J.{2}A.{2}K.O.{3}BDO|J.{2}A.{2}K.{2}OBD.{2}O|J.{2}A.{2}K.{2}OB.D.O|J.{2}A.{2}K.{2}OB.{2}DO|J.{2}A.{2}K.{2}O.BD.O|J.{2}A.{2}K.{2}O.B.DO|J.{2}A.{2}K.{2}O.{2}BDO|J.{2}A.{2}K.{3}OBD.O|J.{2}A.{2}K.{3}OB.DO|J.{2}A.{2}K.{3}O.BDO|J.{2}A.{2}K.{4}OBDO|J.{2}A.{3}KOBD.{3}O|J.{2}A.{3}KOB.D.{2}O|J.{2}A.{3}KOB.{2}D.O|J.{2}A.{3}KOB.{3}DO|J.{2}A.{3}KO.BD.{2}O|J.{2}A.{3}KO.B.D.O|J.{2}A.{3}KO.B.{2}DO|J.{2}A.{3}KO.{2}BD.O|J.{2}A.{3}KO.{2}B.DO|J.{2}A.{3}KO.{3}BDO|J.{2}A.{3}K.OBD.{2}O|J.{2}A.{3}K.OB.D.O|J.{2}A.{3}K.OB.{2}DO|J.{2}A.{3}K.O.BD.O|J.{2}A.{3}K.O.B.DO|J.{2}A.{3}K.O.{2}BDO|J.{2}A.{3}K.{2}OBD.O|J.{2}A.{3}K.{2}OB.DO|J.{2}A.{3}K.{2}O.BDO|J.{2}A.{3}K.{3}OBDO|J.{2}A.{4}KOBD.{2}O|J.{2}A.{4}KOB.D.O|J.{2}A.{4}KOB.{2}DO|J.{2}A.{4}KO.BD.O|J.{2}A.{4}KO.B.DO|J.{2}A.{4}KO.{2}BDO|J.{2}A.{4}K.OBD.O|J.{2}A.{4}K.OB.DO|J.{2}A.{4}K.O.BDO|J.{2}A.{4}K.{2}OBDO|J.{2}A.{5}KOBD.O|J.{2}A.{5}KOB.DO|J.{2}A.{5}KO.BDO|J.{2}A.{5}K.OBDO|J.{2}A.{6}KOBDO|J.{3}AKOBD.{5}O|J.{3}AKOB.D.{4}O|J.{3}AKOB.{2}D.{3}O|J.{3}AKOB.{3}D.{2}O|J.{3}AKOB.{4}D.O|J.{3}AKOB.{5}DO|J.{3}AKO.BD.{4}O|J.{3}AKO.B.D.{3}O|J.{3}AKO.B.{2}D.{2}O|J.{3}AKO.B.{3}D.O|J.{3}AKO.B.{4}DO|J.{3}AKO.{2}BD.{3}O|J.{3}AKO.{2}B.D.{2}O|J.{3}AKO.{2}B.{2}D.O|J.{3}AKO.{2}B.{3}DO|J.{3}AKO.{3}BD.{2}O|J.{3}AKO.{3}B.D.O|J.{3}AKO.{3}B.{2}DO|J.{3}AKO.{4}BD.O|J.{3}AKO.{4}B.DO|J.{3}AKO.{5}BDO|J.{3}AK.OBD.{4}O|J.{3}AK.OB.D.{3}O|J.{3}AK.OB.{2}D.{2}O|J.{3}AK.OB.{3}D.O|J.{3}AK.OB.{4}DO|J.{3}AK.O.BD.{3}O|J.{3}AK.O.B.D.{2}O|J.{3}AK.O.B.{2}D.O|J.{3}AK.O.B.{3}DO|J.{3}AK.O.{2}BD.{2}O|J.{3}AK.O.{2}B.D.O|J.{3}AK.O.{2}B.{2}DO|J.{3}AK.O.{3}BD.O|J.{3}AK.O.{3}B.DO|J.{3}AK.O.{4}BDO|J.{3}AK.{2}OBD.{3}O|J.{3}AK.{2}OB.D.{2}O|J.{3}AK.{2}OB.{2}D.O|J.{3}AK.{2}OB.{3}DO|J.{3}AK.{2}O.BD.{2}O|J.{3}AK.{2}O.B.D.O|J.{3}AK.{2}O.B.{2}DO|J.{3}AK.{2}O.{2}BD.O|J.{3}AK.{2}O.{2}B.DO|J.{3}AK.{2}O.{3}BDO|J.{3}AK.{3}OBD.{2}O|J.{3}AK.{3}OB.D.O|J.{3}AK.{3}OB.{2}DO|J.{3}AK.{3}O.BD.O|J.{3}AK.{3}O.B.DO|J.{3}AK.{3}O.{2}BDO|J.{3}AK.{4}OBD.O|J.{3}AK.{4}OB.DO|J.{3}AK.{4}O.BDO|J.{3}AK.{5}OBDO|J.{3}A.KOBD.{4}O|J.{3}A.KOB.D.{3}O|J.{3}A.KOB.{2}D.{2}O|J.{3}A.KOB.{3}D.O|J.{3}A.KOB.{4}DO|J.{3}A.KO.BD.{3}O|J.{3}A.KO.B.D.{2}O|J.{3}A.KO.B.{2}D.O|J.{3}A.KO.B.{3}DO|J.{3}A.KO.{2}BD.{2}O|J.{3}A.KO.{2}B.D.O|J.{3}A.KO.{2}B.{2}DO|J.{3}A.KO.{3}BD.O|J.{3}A.KO.{3}B.DO|J.{3}A.KO.{4}BDO|J.{3}A.K.OBD.{3}O|J.{3}A.K.OB.D.{2}O|J.{3}A.K.OB.{2}D.O|J.{3}A.K.OB.{3}DO|J.{3}A.K.O.BD.{2}O|J.{3}A.K.O.B.D.O|J.{3}A.K.O.B.{2}DO|J.{3}A.K.O.{2}BD.O|J.{3}A.K.O.{2}B.DO|J.{3}A.K.O.{3}BDO|J.{3}A.K.{2}OBD.{2}O|J.{3}A.K.{2}OB.D.O|J.{3}A.K.{2}OB.{2}DO|J.{3}A.K.{2}O.BD.O|J.{3}A.K.{2}O.B.DO|J.{3}A.K.{2}O.{2}BDO|J.{3}A.K.{3}OBD.O|J.{3}A.K.{3}OB.DO|J.{3}A.K.{3}O.BDO|J.{3}A.K.{4}OBDO|J.{3}A.{2}KOBD.{3}O|J.{3}A.{2}KOB.D.{2}O|J.{3}A.{2}KOB.{2}D.O|J.{3}A.{2}KOB.{3}DO|J.{3}A.{2}KO.BD.{2}O|J.{3}A.{2}KO.B.D.O|J.{3}A.{2}KO.B.{2}DO|J.{3}A.{2}KO.{2}BD.O|J.{3}A.{2}KO.{2}B.DO|J.{3}A.{2}KO.{3}BDO|J.{3}A.{2}K.OBD.{2}O|J.{3}A.{2}K.OB.D.O|J.{3}A.{2}K.OB.{2}DO|J.{3}A.{2}K.O.BD.O|J.{3}A.{2}K.O.B.DO|J.{3}A.{2}K.O.{2}BDO|J.{3}A.{2}K.{2}OBD.O|J.{3}A.{2}K.{2}OB.DO|J.{3}A.{2}K.{2}O.BDO|J.{3}A.{2}K.{3}OBDO|J.{3}A.{3}KOBD.{2}O|J.{3}A.{3}KOB.D.O|J.{3}A.{3}KOB.{2}DO|J.{3}A.{3}KO.BD.O|J.{3}A.{3}KO.B.DO|J.{3}A.{3}KO.{2}BDO|J.{3}A.{3}K.OBD.O|J.{3}A.{3}K.OB.DO|J.{3}A.{3}K.O.BDO|J.{3}A.{3}K.{2}OBDO|J.{3}A.{4}KOBD.O|J.{3}A.{4}KOB.DO|J.{3}A.{4}KO.BDO|J.{3}A.{4}K.OBDO|J.{3}A.{5}KOBDO|J.{4}AKOBD.{4}O|J.{4}AKOB.D.{3}O|J.{4}AKOB.{2}D.{2}O|J.{4}AKOB.{3}D.O|J.{4}AKOB.{4}DO|J.{4}AKO.BD.{3}O|J.{4}AKO.B.D.{2}O|J.{4}AKO.B.{2}D.O|J.{4}AKO.B.{3}DO|J.{4}AKO.{2}BD.{2}O|J.{4}AKO.{2}B.D.O|J.{4}AKO.{2}B.{2}DO|J.{4}AKO.{3}BD.O|J.{4}AKO.{3}B.DO|J.{4}AKO.{4}BDO|J.{4}AK.OBD.{3}O|J.{4}AK.OB.D.{2}O|J.{4}AK.OB.{2}D.O|J.{4}AK.OB.{3}DO|J.{4}AK.O.BD.{2}O|J.{4}AK.O.B.D.O|J.{4}AK.O.B.{2}DO|J.{4}AK.O.{2}BD.O|J.{4}AK.O.{2}B.DO|J.{4}AK.O.{3}BDO|J.{4}AK.{2}OBD.{2}O|J.{4}AK.{2}OB.D.O|J.{4}AK.{2}OB.{2}DO|J.{4}AK.{2}O.BD.O|J.{4}AK.{2}O.B.DO|J.{4}AK.{2}O.{2}BDO|J.{4}AK.{3}OBD.O|J.{4}AK.{3}OB.DO|J.{4}AK.{3}O.BDO|J.{4}AK.{4}OBDO|J.{4}A.KOBD.{3}O|J.{4}A.KOB.D.{2}O|J.{4}A.KOB.{2}D.O|J.{4}A.KOB.{3}DO|J.{4}A.KO.BD.{2}O|J.{4}A.KO.B.D.O|J.{4}A.KO.B.{2}DO|J.{4}A.KO.{2}BD.O|J.{4}A.KO.{2}B.DO|J.{4}A.KO.{3}BDO|J.{4}A.K.OBD.{2}O|J.{4}A.K.OB.D.O|J.{4}A.K.OB.{2}DO|J.{4}A.K.O.BD.O|J.{4}A.K.O.B.DO|J.{4}A.K.O.{2}BDO|J.{4}A.K.{2}OBD.O|J.{4}A.K.{2}OB.DO|J.{4}A.K.{2}O.BDO|J.{4}A.K.{3}OBDO|J.{4}A.{2}KOBD.{2}O|J.{4}A.{2}KOB.D.O|J.{4}A.{2}KOB.{2}DO|J.{4}A.{2}KO.BD.O|J.{4}A.{2}KO.B.DO|J.{4}A.{2}KO.{2}BDO|J.{4}A.{2}K.OBD.O|J.{4}A.{2}K.OB.DO|J.{4}A.{2}K.O.BDO|J.{4}A.{2}K.{2}OBDO|J.{4}A.{3}KOBD.O|J.{4}A.{3}KOB.DO|J.{4}A.{3}KO.BDO|J.{4}A.{3}K.OBDO|J.{4}A.{4}KOBDO|J.{5}AKOBD.{3}O|J.{5}AKOB.D.{2}O|J.{5}AKOB.{2}D.O|J.{5}AKOB.{3}DO|J.{5}AKO.BD.{2}O|J.{5}AKO.B.D.O|J.{5}AKO.B.{2}DO|J.{5}AKO.{2}BD.O|J.{5}AKO.{2}B.DO|J.{5}AKO.{3}BDO|J.{5}AK.OBD.{2}O|J.{5}AK.OB.D.O|J.{5}AK.OB.{2}DO|J.{5}AK.O.BD.O|J.{5}AK.O.B.DO|J.{5}AK.O.{2}BDO|J.{5}AK.{2}OBD.O|J.{5}AK.{2}OB.DO|J.{5}AK.{2}O.BDO|J.{5}AK.{3}OBDO|J.{5}A.KOBD.{2}O|J.{5}A.KOB.D.O|J.{5}A.KOB.{2}DO|J.{5}A.KO.BD.O|J.{5}A.KO.B.DO|J.{5}A.KO.{2}BDO|J.{5}A.K.OBD.O|J.{5}A.K.OB.DO|J.{5}A.K.O.BDO|J.{5}A.K.{2}OBDO|J.{5}A.{2}KOBD.O|J.{5}A.{2}KOB.DO|J.{5}A.{2}KO.BDO|J.{5}A.{2}K.OBDO|J.{5}A.{3}KOBDO|J.{6}AKOBD.{2}O|J.{6}AKOB.D.O|J.{6}AKOB.{2}DO|J.{6}AKO.BD.O|J.{6}AKO.B.DO|J.{6}AKO.{2}BDO|J.{6}AK.OBD.O|J.{6}AK.OB.DO|J.{6}AK.O.BDO|J.{6}AK.{2}OBDO|J.{6}A.KOBD.O|J.{6}A.KOB.DO|J.{6}A.KO.BDO|J.{6}A.K.OBDO|J.{6}A.{2}KOBDO|J.{7}AKOBD.O|J.{7}AKOB.DO|J.{7}AKO.BDO|J.{7}AK.OBDO|J.{7}A.KOBDO|J.{8}AKOBDO)
Avatar billede nielle Nybegynder
14. september 2006 - 18:57 #19
Uheldigvis kan jeg ikke komme tanke om andre løsning end det ovestående. Efter som at du skal bruge det i SpamAssassin har du ikke en gang mulighed for at efterbehandle de med programmering, og så forsvinder den sidste mulighed.

Der er - mig bekendt - ikke nogen mekansime som du kan bruge hvis du ønsker at ægge en binding på summen af ".*?" leddene.
Avatar billede nielle Nybegynder
14. september 2006 - 19:00 #20
Monsteret fra 14/09-2006 18:54:51 matcher alle dem som er præcis 15 tegn lange. Hvis det er 15 eller mindre, skal alle delled på formen .{n} ændres til .{1,n}
Avatar billede nielle Nybegynder
14. september 2006 - 19:00 #21
Rettere sagt: til: .{0,n}
Avatar billede jakobdo Ekspert
14. september 2006 - 21:12 #22
Tak for dine indlæg Nielle.
Ang: 14/09-2006 18:54:51: Du er jo syg! :o)
Avatar billede nielle Nybegynder
14. september 2006 - 21:16 #23
Bare rolig, den er ikke lavet i hånden ;^)
Avatar billede jakobdo Ekspert
14. september 2006 - 21:28 #24
Men stadig væk! :o)
Hvis du vil have point, så synes jeg du skal have dem for dine gode forsøg.
Godt nok ikke en løsning, for jeg ved godt hvordan man kunne lave det i f.eks. php.
Men smid et svar.
Avatar billede nielle Nybegynder
14. september 2006 - 21:31 #25
Tekninsk set har jeg jo givet en løsning ... bare en totalt ubrugelig løsning ;^)
Avatar billede jakobdo Ekspert
14. september 2006 - 21:48 #26
Jaja, du skal nok få pointene...
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
Kurser inden for grundlæggende programmering

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