Leitfaden und Kurzübersicht für reguläre Ausdrücke

<< Click to Display Table of Contents >>

RayPack > 8.0 > User Guide > Referenz und Kurzübersichten 

Leitfaden und Kurzübersicht für reguläre Ausdrücke

Reguläre Ausdrücke (abgekürzt als RegExp) sind Zeichenfolgen, die ein Suchmuster bilden, das verwendet werden kann, um Textmaterial eines bestimmten Musters zu identifizieren. Die Syntax regulärer Ausdrücke ist standardisiert und wird in vielen verschiedenen Produkten und Betriebssystemen verwendet, insbesondere für Such- und Ersetzungsfunktionen.

 

RayPack verwendet reguläre Ausdrücke, um eine flexible Möglichkeit zur Definition kompakter Textbedingungen bereitzustellen, die weiter angepasst werden können, um bestimmte Ressourcen basierend auf komplexen Regeln und Logiken ein- und auszuschließen.

 

Das folgende Cheat Sheet enthält einige häufig verwendete Muster für reguläre Ausdrücke und Beispielmuster mit Erklärung.

 

Phrase

Beschreibung

Beispiele

Buchstaben oder Ziffern

Wörtliche Bedeutung, Groß-/Kleinschreibung beachten

Abc stimmt überein mit Abc aber nicht mit abc

Pipe (|)

Alternative

A|b stimmt überein mit A, b, Ab aber nicht mit BC

Sternchen (*)

Null oder mehr Instanzen der vorherigen Menge

A*b stimmt überein mit Aaaaab, Ab, bcd aber nicht mit Ac

A|b* stimmt überein mit a, b, bb, bbb aber nicht mit CDE

Plus (+)

Eine oder mehr Instanzen der vorherigen Menge

A+b stimmt überein mit Ab, AAAb aber nicht mit b

(a|b)+cd stimmt überein mit acd, bcd, aaacd, abcd, bacd aber nicht mit cd

Folder[0-9]+ stimmt überein mit Folder1, Folder2, Folder21 aber nicht mit Folder oder FolderA

Fragezeichen (?)

Null oder eine Instanz der vorherigen Menge

Ab?(c|d) stimmt überein mit Ac, Ade, Abcd aber nicht mit Abb

Runde Klammern ( und )

Gruppierung von Mengen

(abc|def)ghi stimmt überein mit abcghi, defghi, abcdefghi aber nicht mit abcdef

(a|b|c)?def stimmt überein mit adef, cdefghi, def aber nicht mit abc

Zirkumflex (^)

Am Anfang der Zeichenfolge markiert, dass keine Zeichen davor erlaubt sind

^abc stimmt überein mit abc, abcdef, aber nicht mit defabc

^(folder1|folder2|folder3)\\test stimmt überein mit folder1\test, folder2\test\test2 aber nicht mit C:\folder1\test

Dollar ($)

Am Ende der Zeichenfolge markiert, dass keine Zeichen danach erlaubt sind

:\\test\\folder$ stimmt überein mit C:\test\folder, D:\test\folder aber nicht mit C:\test\folder1

Eckige Klammern [ und ]

Erlaubte Zeichenmenge

[a-z] stimmt überein mit abc, def aber nicht mit 123

^[A-D]:\\Test\\ stimmt überein mit C:\Test\ und D:\Test\ aber nicht mit E:\Test\

folder[a-zA-Z0-9] stimmt überein mit folderA, folder1 aber nicht mit folder\test

Zirkumflex in eckigen Klammern [^]

In eckigen Klammern – Negation des Zeichensatzes

C:\\folder[^\\]*\\test stimmt überein mit C:\folder\test aber nicht mit C:\folder\subfolder\test

Punkt (.)

Beliebiges Zeichen

Folder.\\test stimmt überein mit FolderA\, Folder4\, Folder$\ aber nicht mit Folder\

Backslash (\)

Escape-Zeichen

C:\\test\\test2 stimmt überein mit C:\test\test2 aber nicht mit C:\\test\\test2

Test\* stimmt überein mit Test*

Test\(a\) stimmt überein mit Test(a) aber nicht mit Testa

(?i)

Am Anfang des Ausdrucks verwendet – Groß-/Kleinschreibung nicht beachten

(?i)abc stimmt überein mit abc, Abc, ABC123 aber nicht mit 123

 

Beispiele

^(?i)(%windir%)\\Installer$

 

Stimmt überein

Stimmt nicht überein

%windir%\Installer

%windir%\INSTALLER

%windir%\Installer\123-123.msi

 

^(?i)%ProgramFiles(x86)%\\Common Files\\(InstallShield|Wise Installation)$

 

Stimmt überein

Stimmt nicht überein

%ProgramFiles(x86)%\Common Files
\InstallShield

%ProgramFiles(x86)%\COMMON FILES
\Wise Installation

%ProgramFiles(x86)%\Common Files\Microsoft

%ProgramFiles(x86)%\Common Files\InstallShield

%ProgramFiles(x86)%\Common Files\

%ProgramFiles(x86)%\Common Files\
Wise Installation\Subfolder

 

^unins(|t|tall)\d*\.(cif|cfg|dat|dll|ini|exe|xml|lnk)$

 

Stimmt überein

Stimmt nicht überein

uninst.exe

uninst_myApp.lnk

uninstallapp.cfg

uninst.ini

MyProgram_uninstall.cfg

uninstall.txt

unins.txt

 

^_isreg32\.dll$

 

Stimmt überein

Stimmt nicht überein

_isreg32.dll

_ISREG32.dll

isreg32.dll

_isreg.dll

_isreg32.dll.backup

 

^(?i)(HKEY_LOCAL_MACHINE|HKEY_CURRENT_USER)\\(Software\\Wow6432Node|Software)                 
\\InstallShield

 

Stimmt überein

Stimmt nicht überein

HKEY_LOCAL_MACHINE\Software\InstallShield

HKEY_LOCAL_MACHINE\Software\Wow6432Node
\InstallShield

HKEY_CURRENT_USER\SOFTWARE\Wow6432Node
\InstallShield

HKEY_CURRENT_USER\Software\INSTALLSHIELD

HKEY_CLASSES_ROOT\Software\InstallShield 

HKEY_CURRENT_USER\Software
\Progrems\InstallShield

 

^%USERPROFILE%\\(.+\\)?Temp$

 

Stimmt überein

Stimmt nicht überein

%USERPROFILE%\Temp

%USERPROFILE%\test\Temp

%USERPROFILE%\test\test2\Temp

%USERPROFILE%\Temp2

"%USERPROFILE%\Temp"

%userprofile%\Temp