Python Regex Lesung in C-Stil Kommentare

Ich versuche, Kommentare im Stil von C in einer C-Datei zu finden, aber ich habe Probleme, wenn es // zufällig innerhalb von Zitaten gibt. Dies ist die Datei:

/*My function
is great.*/
int j = 0//hello world
void foo(){
    //tricky example
    cout << "This // is // not a comment\n";
}

it wird mit diesem Cout übereinstimmen. Dies ist, was ich bisher habe (ich kann die / ** / Kommentare bereits entsprechen)

fp = open(s)

p = re.compile(r'//(.+)')
txt = p.findall(fp.read())
print (txt)

Antworten auf die Frage(2)

Ihre Antwort auf die Frage