Avatar billede hurra Novice
11. december 2006 - 20:13 Der er 1 løsning

Skal indeholde A men ikke starte med B

Jeg har lavet en lille script til at finde alle funktioner der bliver exporteret fra en header fil til en dll.

Et lille ud klip fra filen:
#define DLLEXPORT __stdcall
int DLLEXPORT init(void);
int DLLEXPORT trace_init(void);

Jeg læser header filen igennem linie for linie, og hvis linien opfylder de rette kriterier, foretager jeg parsningen.

Problemet er lige nu at ovennævnte kriteriet er om linien indeholder "DLLEXPORT", hvilket definitionen af DLLEXPORT jo også gør, men den vil jeg ikke ret gerne ha ud.

Hvordan laver jeg et udtryk der gør at jeg får linier der indeholder "DLLEXPORT" hvis ikke linien starter med "#" ?
Avatar billede hurra Novice
11. december 2006 - 21:59 #1
Der var en anden ting jeg havde glemt at tænke på (jeg skal da også kunne parse multiline), så jeg kommer aligevel til at skulle bruge nogle branches og så er det lige pludslig ikke så interessant at løse det hele i et regulat udtryk.
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