Søg/Erstat med Regular Expressions i Visual Studio

Jeg bruger det kun sjældent, så når jeg lige har brug for det ... hvordan er det så lige syntaxen er?

Lad os som eksempel sige, at vi har en XML-struktur som dette:

<option name="1357" value="lorem">Some option text</option>
<option name="2468" value="ipsum">Some other text</option>

Vi vil nu gerne have ombyttet værdierne for de to attributter name og value.

Som søgekriterier bruger vi dette udtryk/mønster:

name="{.*}" value="{.*}"

De 2 udtryk i {..} matcher hver især på en tekststreng af vilkårlig længde, afgrænset af ". Indholdet af de 2 kan så bruges i vores erstat/replace udtryk således:

name="\2" value="\1"

Dvs. værdien fra det andet {..}-match indsættes i stedet for \2 og værdien af det første {..}-match indsættes i stedet for \1.

Tags:

Langsom OUTER JOIN

Utroligt hvor effektiv lidt omskrivning af SQL kan være! Forklaring følger ...

Jeg havde i min MS SQL database et view, der bl.a. omfattede en WHERE clause med 2 udtryk adskilt af OR. Viewet returnerede kun 1150 rækker, men eksekveringen tog 45+ sekunder! Index på relevante felter gav intet positivt resultat. Ved at fjerne halvdelen af min WHERE clause (OR ...) gjorde at viewet kunne eksekvere på <1 sekund. Dette gjalt for begge dele af WHERE-udttrykket.

What to do?

Ved skille hele view SELECT udtrykket i 2 "ens" dele - blot med hver deres WHERE clause - og så lave en UNION ALL i mellem ... TADAAA! Hele viewet eksekverer på <1 sekund.

Tags:

Synkronisering af resource-filer (.RESX)

Arbejder du med resource-filer i ASP.NET - fx til håndtering af flere sprog - havner du sikkert i en situation hvor du får tilføjet nye keys i din primære resource-fil. Problemet er så at få opdateret alle øvrige resource-filer med de nye keys.

Til at løse dette banale problem faldt jeg over dette lille smarte command-line-værktøj: http://www.screwturn.eu/ResxSync.ashx. Med dette lille værktøj kan du få hurtigt så synkronieret keys fra din primære resource til en anden.

Tags:

Pizza i Weber kuglegrill

Det er nu ganske fantastisk, når man går og tror, at man mestrer noget – og så pludselig opdager, at der stadig er rum for forbedring :-)

_MG_8967

Jeg har gennem længere tid (læs: år!) arbejdet på at gøre mine hjemmelavede pizzaer helt perfekte. Efterhånden er jeg nået et godt stykke vej og har fået styr på både dej-sammensætning, hævning, udrulning, topping … og bagning. Troede jeg.

Jeg har tidligere læst om andre, der har bagt pizza i kuglegrill, men ikke selv prøvet. Efter at have fået “konverteret” et helt standard ciabatta-brød fra supermarkedet til et super-sprødt og lækkert brød i Weberen besluttede jeg mig endelig for at få afprøvet pizzabagning i kuglegrillen.

Dej, hævning og topping foregik som “sædvanligt”, dvs. som følger:

Pizzadej til ca. 4 pizzaer
Ca. 20 g gær
2½ DL lunket vand
1 tsk sukker
- smuldres og blandes i røreskål og lades stå ca. 10 minutter. Gæren opløses og sukkeret hjælper med at “aktivere” den.

1 spsk olivenolie
1 tsk salt
- tilsættes

Hvedemel, gerne italiensk type-00, tilsættes løbende mens dejen køres på køkkenmaskine. Tilsæt lidt mel af gangen og lad det hele tiden blive indarbejdet. Dejen skal slutteligt være sammenhængende og “fugtig”. Dejen kommes i en stor skål smurt med olivenolie, dækkes med klæde eller film og sættes i køleskabet i 4-5-6 timer.

Dejen tages ud af køleskabet ca. 1 time før den skal bruges, deles i passende stykker og formes til boller, der stilles til hvile under et klæde.

Klargøring af grill
Der tændes op i kuglegrillen på behøring vis – vær generøs med kullene, da der skal bruges meget varme. Jeg tænder altid op i en grillstarter, da det giver ensartede kul med høj varme. Kullene fordeles over hele grillen.

_MG_8956 _MG_8957

Pizzabagesten placeres på grillristen og låget lægges på. Lad grillen stå 15 minutter og lad pizzastenen blive glohed. Jeg lader både top- og bund-spjæld være fuldt åbne for at opnår maksimal varme.

_MG_8958 _MG_8959

Nu skal vi lave pizza!
Tag en pizza-dej-bolle og rul den tyndt ud på et godt melet bord. Vend den ind i mellem og sørg for, at den ikke hænger i bordet. Børst overskydende mel af og placér bunden på en godt melet pizzaspade.

_MG_8949 _MG_8960

Min personlige præference når der drejer sig om pizza-topping er, at der ikke skal for mange forskellige ting på. Simpelt og godt. Det engelske udtryk “less is more” rammer hovedet på sømmet i denne forbindelse.

Jeg bruger her en rest kødsauce (Bolognese), tomatsauce (fra ALDI – fås i to varianter til omkring kr. 8,- pr glas og kan varmt anbefales!), spansk chorizo, frisk mozarella og frisk basilikum. Først pizza-test er med kødsaucen og frisk, plukket mozarella.

_MG_8950 _MG_8962

Pizzaen føres over over pizzastenen i grillen og låget puttes hurtigt på igen. Så er det kun et spørgsmål om tålmodighed …

Modsat når jeg har bagt pizza i almindelig varmluftsovn, gør den tilsyneladende højere temperatur i kuglegrillen, at bunden opfører sig noget anderledes. Kanterne løfter sig i smukke bølger hele vejen rundt og bunden får derfor også de karakteristiske mørke områder, der hvor dejen har kontakt med stenen – vi taler ikke om at den bliver brændt, men nærmere “ristet”, samtidig med, at den får en super-elegant sprødhed, som hos mig vækker minder tilbage til adskellige rejser til Italien.

_MG_8965 _MG_8966

Når bunden begynder at bule op, kanterne bliver sprøde og fyldet er tydeligt tilberedt tages pizzaen af grillen, toppes med fx frisk basilikum og nydes med passende rødvin :-)

Tags: , ,

Pangritata - når daggammelt brød bliver kongemad

Inspireret (kraftigt) af en Jamie Oliver-opskrift prøvede jeg idag en ny variant i den uendelige verden af pastaretter. I en kedelig kogebog ville det hedde "Spaghetti med brødkrummer", men det er så meget, meget mere end det! Pangritata er en skøn måde at få brugt et stykke halvtørt, kedeligt brød - og samtidig få lækker, velsmagende mad ud af det.

Tid: Ca. 20 minutter

Ingredienser

1 ciabattabolle
200 g spaghetti (gerne af fuldkorn)
100 g pancetta
2 fed hvidløg
2 tsk tørret timian eller friske timianblade
2 tsk knust tørret chili (eller efter smag)
Hakket persille
Ca. 1 dl olivenolie

Fremgangsmåde

En halvkedelig ciabattabolle e.l. smides i blenderen og der køres et par sekunder, til den er adskilt i "brød-atomer" - dog uden helt at blive til rasp. Rigeligt med olivenolie kommes på en meget varm pande, og straks kommes brødkrummer på sammen med et finthakket eller knust fed hvidløg og timian. Sautér et par minutter og rør jævnligt i blandingen. Når det er gyldent, lægges det på køkkenrulle eller andet fedtsugende papir. Reelt set, har du nu lavet meget små brødcrouton'er :-)

Spaghetti koges al-dente, dvs. typisk 10 minutter i rigeligt saltet vand.

Mens pastaen koger, steges nogle skiver pancetta sprøde på panden. Man kan sikkert godt slippe afsted med at bruge almindelig bacon, men til denne ret vil jeg dog anbefale at skaffe pancetta, da den har en mere "autentisk" smag og ikke på samme måde som bacon gør retten "røget". Pancettaen tages af panden og deles eventuelt i mindre stykker.

På panden (nu på svag varme) kommes igen olivenolie sammen med et fintsnittet hvidløgsfed og et par teskefulde (eller efter smag) knust tørret chili. Spaghettien drænes og kommes på panden og blandes hurtigt med chili-hvidløgs-olien. Pancetta blandes ligeledes i sammen med en del af pangritataen.

Servering

Server spaghettien i en stor varm tallerken, drysset med rigeligt pangritata og rigeligt hakket persille.

Tags: , ,

Mexikansk tomatsuppe med kylling

Tomatsuppe er dejligt, men kan også være en smule kedeligt. For variationens skyld kiggede jeg derfor efter en mere spicy udgave og fandt en i det mexikanske køkken.

Den er ufattelig nem og virker næsten for let ved sin brug af dåse-ingredienser, men tag ikke fejl; tomater på dåse har uendelig meget mere smag end de små vandballoner man kan køber på denne (kolde) årstid.

Tid: Ca. 1 time og 10 minutter.

Ingredienser

2 stk. kyllingbryster, fri for skind og ben
1 ds Heinz tomatsuppe
1 ds hakkede flåede tomater
½ glas medium hot salsa
2 gulerødder i fine tern
2 kartofler i fine tern
1 porre i tynde skiver
1 fed hvidløg, finthakket
0,75 L hønse- eller grøntsagsbuillon (fx 2 buillonterninger rørt ud i kogende vand)
Salt & peber

Fremgangsmåde

Svits kort hvidløg i lidt olie i en gryde. Tilsæt kyllingbryst og svits det kort sammen. Tilsæt buillon og lad simre under låg i ca. 30 minutter.
Tag kyllingkødet op og gem buillonen. Skær kyllingkødet i små tern og stil til side.
Kom lidt olie i gryden og sautér kort gulerødder, porre og kartofler. Tilsæt salsa, hakkede tomater, tomatsuppe samt kyllingkødet og bland godt. Tilsæt ca. halvdelen af buillonen indtil suppen har en passende konsistens. Gem resten, så du kan spæde til senere, hvis suppen bliver for tyk.
Lad simre under låg ved svag varme i ca. 30 minutter. Smag til med salt og peber.

Servering

Server suppen alene eller toppet med finthakket frisk persille og/eller sprødstegte bacontern.
Til suppen kan desuden serveres fx hvidløgsbrød eller grillede tortillas lagt sammen med ost.

Tags: ,

Kahlua-is

Hvad er bedre end eksperimenter der kan spises?

Når Kahlua møder grofthakket Valrhona-chokolade og chokoladesauce i en cremet flødeis danser nydelsen rundt på tungen. Målene er som så ofte i mit køkken lidt på "slump", men dog ikke så upræcise at det kan gå galt.

2 æggeblommer (pasteuriserede)
1 helt æg (pasteuriseret)
50 g mørk sukkersirup
2 tsk. vanillesukker
2 dl piskefløde
1 dl mælk
½ dl Kahlua
50 g grofthakket chokolade
Chokoladesauce (ja, Dr Oetker er ok her :-) )

Æg, sukkersirup og vanillesukker piskes godt sammen. Fløde, mælk og Kahlua piskes grundigt i.

Køres på ismaskine i ca. 30 minutter. Efter ca. 20 minutter tilsættes den hakkede chokolade.

Når isen er færdigrørt hældes halvdelen i en passende bøtte, chokoladesauce hældes over i striber, og resten af isen ovenpå. Isen sættes i fryseren indtil lækkersultenheden ikke kan bære det længere :-)

Kan med fordel serveres med chokoladevafler og toppes med chokoladesauce.

Tags: , ,

Ny blog

Det er ikke nogen hemmelighed, at jeg ikke er alt for aktiv med hensyn til at skrive på min blog. Alligevel er det nu tid til at prøve lidt igen; og nu på en ny blog-platform; BlogEngine.NET.

Jeg vil forsøge fremover at skrive jeg oftere og nu med lidt mere fokus på eksperimenter i køkkenet, opskrifter m.v.

Tags: