RegEx, um nur den C # Interface-Dateinamen zu entsprechen

8

Im Plugin "Productivity Power Tools" von Visual Studio 2010 (was großartig ist) können Sie Dateiregisterkarten so konfigurieren, dass sie basierend auf regulären Ausdrücken farbcodiert werden.

Ich habe eine RegEx, um die Tab-Farbe von Interface-Dateien (IMyInterface.cs) von normalen .cs-Dateien zu unterscheiden:

%Vor%

Leider codiert diese Farbe auch jede Datei, die mit einem Großbuchstaben "I" beginnt (zB Information.cs).

Wie kann diese RegEx geändert werden, um nur Dateien einzuschließen, bei denen der erste Buchstabe "I" und der zweite Buchstabe kein Kleinbuchstabe ist?

    
Guy Starbuck 11.03.2011, 14:57
quelle

5 Antworten

5

Ihre Regexp sollte so funktionieren wie sie ist. Es ist möglich, dass es im Modus ignore case ausgeführt wird. Versuche diesen Modus in deinem Regexp mit (?-i) :

zu deaktivieren %Vor%     
Maxim Gueivandov 11.03.2011 15:06
quelle
2

Versuchen Sie es

%Vor%

Setzt zuerst case insensitiv.

Reguläre Ausdrücke

    
Chris Diver 11.03.2011 15:10
quelle
1

Dateinamen in Windows unterscheiden nicht zwischen Groß- und Kleinschreibung, daher wird bei Power Tools offensichtlich die Groß- / Kleinschreibung nicht beachtet.

    
Stephen Chung 11.03.2011 15:09
quelle
0

Wie wäre es damit:

%Vor%

so

%Vor%

Prooflink

    
abatishchev 11.03.2011 15:01
quelle
0

Ich habe meine Standardmuster, die dort eingefügt wurden, entfernt und ^I[A-Z].*\.cs[ ]*(\[read only\])?$ verwendet. Ich denke, es gibt jedoch eine Vorrangfrage, so dass du den Standard .cs -Muster-Matcher dort belässt und deinen zum Ende hinzufügst Vielleicht hast du deine versteckt, weil sie zuerst mit der allgemeinen übereinstimmte.

Und Sie können sie nicht neu anordnen oder löschen, also ist es ein bisschen fummelig, die Bestellung gut funktionieren zu lassen ...

FWIW, ich glaube nicht, dass die Frage der Groß- / Kleinschreibung ( (?-i ) einen Unterschied macht.

    
Unsliced 09.05.2011 14:03
quelle

Tags und Links