Sie sind hier:
Wissen
Telefon (Mo-Fr 9 bis 16 Uhr):
0201/649590-0
|
Kontaktformular
MENU
Medien
Übersicht
Lexikon/Glossar
Spickzettel
Weblog
Konferenzvorträge
Fachbücher
Fachartikel
Leserportal
Autoren gesucht!
Literaturtipps
Praxisnahe Fallbeispiele
Downloads
Newsletter
.NET
Startseite
.NET 8.0
.NET 7.0
.NET 6.0
.NET 5.0
.NET Core
.NET 4.0/4.5.x/4.6.x
.NET 3.0/3.5
.NET 2.0
.NET-Lexikon
Programmiersprachen
Entwicklerwerkzeuge
Klassenreferenz
Softwarekomponenten
Windows Runtime
World Wide Wings-Demo
Versionsgeschichte
Codebeispiele
ASP.NET
Artikel
Bücher
Schulung & Beratung
Konferenzen/Events
ASP.NET
Startseite
Lexikon
Sicherheit
Konfiguration
Global.asax
Tracing
Technische Beiträge
Klassenreferenz
Programmiersprachen
Entwicklerwerkzeuge
Softwarekomponenten
Forum
Schulung & Beratung
PowerShell
Startseite
Commandlet-Referenz
Codebeispiele
Commandlet Extensions
Versionsgeschichte
Schulungen+Beratung
Windows
Startseite
Windows Runtime (WinRT)
Windows PowerShell
Windows Scripting
Windows-Schulungen
Windows-Lexikon
Windows-Forum
Scripting
Startseite
Lexikon
FAQ
Bücher
Architektur
Skriptsprachen
Scripting-Hosts
Scripting-Komponenten
COM/DCOM/COM+
ADSI
WMI
WMI-Klassenreferenz
Scripting-Tools
WSH-Editoren
Codebeispiele
.NET-Scripting
Forum
Schulung & Beratung
Nutzer
Anmeldung/Login
Buchleser-Registrierung
Gast-Registrierung
Hilfe
Website-FAQ
Technischer Support
Site Map
Tag Cloud
Suche
Kontakt
Erklärung des Begriffs: Regulärer Ausdruck (RA)
Begriff
Regulärer Ausdruck
Abkürzung
RA
Eintrag zuletzt aktualisiert am
24.01.2010
Zur Stichwortliste unseres Lexikons
Was ist
Regulärer Ausdruck
?
Reguläre Ausdruck ist die Bezeichnung für a) eine Sprache zur Beschreibung von Mustern b) ein konkretes Muster in dieser Sprache.
Ein regulärer Ausdruck ist eine Zeichenkette, die mit Platzhaltern ein Muster beschreibt. Man nach dieser Musterdefinition andere Zeichenkette mit dem Muster vergleichen und erhält als Ergebnis, ob die Zeichenkette auf das Muster passt. Dabei kann das Muster auch auf einen Teil der Zeichenkette zutreffen. Mit regulären Ausdrücken kann man auch Teile von Zeichenketten ersetzen durch andere Zeichenketten (Austauschfunktion).
Das Microsoft
.NET Framework
und die
PowerShell
enthalten eine gute Unterstützung für Mustererkennung in Texten durch reguläre Ausdrücke. Reguläre Ausdrücke sind eine komplexe Sprache, die hier nicht vollständig beschrieben werden kann. Dazu gibt es komplette Bücher. Sie finden eine gute Dokumentation dazu auch im
WWW
unter [
MSDN
08].
Reguläre Ausdrücke in .NET
Der Unternamensraum
System.Text.RegularExpressions
bietet Unterstützung für reguläre Ausdrücke zum Mustervergleich und Ersetzen in Zeichenketten. Die Klasse RegEx stellt mit IsMatch() und Replace() zwei einfache
Methode
n bereit. Wenn ein regulärer Ausdruck mehrfach verwendet werden soll, ist es aus Leistungsgründen sinnvoll, ein RegEx-
Objekt
mit dem regulären Ausdruck zu instanziieren und dann die verschiedenen Eingaben mit den
Methode
n Match() und Replace() anzuwenden.
Beispiel 1: Mustervergleich
In dem folgenden Beispiel prüft ein regulärer Ausdruck, ob die Eingabezeichenkette ein
Global Unique Identifier
(
GUID
) oder eine E-Mail-Adresse ist.
Public void Mustervergleich()
{
const string RA_
GUID
= @"\{[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9|a-f|
A-F]{12}\}";
const string RA_
IPA
dresse = @"\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|
[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b";
const string RA_Email = @"^(?<user>[^@]+)@(?<host>.+)$";
const string EINGABE1 = @"{00000615-0000-0010-8000-00AA006D2EA4}";
const string EINGABE2 = @"192.168.123.355"; // Fehler!
Const string EINGABE3 = @"hs@IT-Visions.de";
Demo.Print("
GUID
korrekt? " + Regex.IsMatch(EINGABE1, RA_
GUID
));
Demo.Print("IP-Adresse korrekt? " + Regex.IsMatch(EINGABE2, RA_
IPA
dresse));
Demo.Print("E-Mail-Adresse korrekt? " + Regex.IsMatch(EINGABE3, RA_Email));
}
Listing: Mustervergleich
Beispiel 2: Musterersatz
Im zweiten Beispiel wird eine Datumszeichenkette der Form 08/01/1972 umgewandelt in 01-08-1972.
public void Musterersatz()
{
const String EINGABE = @"08/01/1972";
const string MUSTER = @"\b(?<month>\d{1,2})/(?<day>\d{1,2})/(?<year>\d{2,4})\b";
const string ERSATZ = @"${day}-${month}-${year}";
Demo.Print("Alt: " + EINGABE);
Demo.Print("Neu: " + Regex.Replace(EINGABE, MUSTER, ERSATZ));
}
Listing: Musterersatz
Querverweise zu anderen Begriffen im Lexikon
System.Text.RegularExpressions
Global Unique Identifier (GUID)
.NET Framework
PowerShell (PS)
Methode
Objekt
Global Unique Identifier (GUID)
Microsoft Developer Network (MSDN)
iOS App Package (IPA)
World Wide Web (WWW)
Beratung & Support
Beratung/Consulting: Azure DevOps Server / Azure DevOps Services - Pro und Contra
Beratung/Consulting: Umstellung/Migration/Umstieg von Windows Forms-Anwendungen von .NET Framework auf .NET 6.0/.NET 7.0
Beratung/Consulting: Azure DevOps Server / Azure DevOps Services: Upgrade/Versionsumstieg (auch von TFS/VSTS)
Beratung/Consulting: Umstellung/Migration/Umstieg von .NET Framework auf .NET 6.0/7.0
Beratung/Consulting: Penetrationstests / IT Security Audits
Beratung/Consulting: Programmcodereview
Beratung/Consulting: Auswahl und Vergleich von JavaScript-Webframeworks
Beratung/Consulting: Unit Testing und Test Driven Development: Pro und Contra
Beratung/Consulting: Migration zu .NET / Umstieg auf .NET
Beratung/Consulting: Umstellung/Migration/Umstieg von ADO.NET Entity Framework auf Entity Framework Core
Beratung/Consulting: Entity Framework versus Entity Framework Core
Beratung/Consulting: Best Practices für moderne Webanwendungen mit HTML5, CSS3 und JavaScript
Beratung/Consulting: Migration/Umstellung von Citrix auf Windows Remote Desktop Services von Microsoft
Beratung/Consulting: Webtechniken, Web-Frameworks/-Bibliotheken und Web-Tools auswählen
Beratung/Consulting: Integration/Kopplung von Azure DevOps Server (ADO) mit anderen Systemen
Beratung/Consulting: Umstellung/Migration/Umstieg von ASP.NET-Anwendungen von .NET Framework auf ASP.NET Core 6.0/7.0
Beratung/Consulting: Webserverframeworks im Vergleich: ASP.NET versus node.js versus Ruby-on-Rails
Beratung/Consulting: Einführung von DevOps mit Continuous Integration (CI) und Continuous Delivery (CD) in Ihrer Softwareentwicklung
Beratung/Consulting: ADO.NET Entity Framework-Leistung / Entity Framework-Performance: Optimierung von Entity Framework-Datenzugriffen
Beratung/Consulting: Umstellung/Migration/Umstieg von WPF-Anwendungen von .NET Framework auf .NET 6.0/.NET 7.0
Beratung/Consulting: Cloud-Computing - Pro und Contra
Beratung/Consulting: Entscheidung für ein Webframework: Angular versus React versus Vue.js versus Svelte
Beratung/Consulting: Azure DevOps Server / Azure DevOps Services - Strategieplanung zum Praxiseinsatz
Beratung/Consulting: Umstieg auf aktuelle Windows-Versionen (Windows-Migration)
Beratung/Consulting: Microsoft SQL Server, Oracle oder MongoDB - Planung, Installation und Konfiguration
Beratung/Consulting: Best Practices bei der Softwareentwicklung mit .NET/ASP.NET/WPF/WCF/Entity Framework u.a.
Beratung/Consulting: Moderne Webanwendungen/Webprogrammierung mit Blazor (ASP.NET Core Blazor)
Beratung/Consulting: Design und Usability ("User Experience - UX") von modernen Webanwendungen
Beratung/Consulting: Azure DevOps Server / Azure DevOps Services - Review
Beratung/Consulting: Webanwendungen optimieren und skalieren (Website-Performance verbessern)
Anfrage für Beratung/Consulting zu Regulä rer Ausdruck RA
Gesamter Beratungsthemenkatalog
Technischer Support zum Regulä rer Ausdruck RA
Schulungen zu diesem Thema
DevOps / Continuous Integration (CI) / Continuous Delivery (CD) mit Ansible
PMI Agile Certified Practitioner
Design und Usability von modernen Software-Benutzeroberflächen (Software Ergonomie/Benutzungsfreundlichkeit/User Interaction Design/User Experience)
Neuerungen in .NET Core 2.1/2.2 gegenüber Version 2.0 (inkl. ASP.NET Core, Entity Framework Core)
AJAX mit ASP.NET (Microsoft AJAX Framework / ASP.NET AJAX Extensions / "Atlas")
.NET 4.5.1/.NET 4.5.2/4.5.3 Update / Neuerungen in .NET Framework 4.5.1/.NET Framework 4.5.2/.NET Framework 4.5.3
GUI-Programmierung mit der Rich Client Platform (RCP)
Refactoring von Java-Programmcode
Windows Server 1709 Update (Neuheiten für Administratoren gegenüber Windows Server 2016)
Webbasistechniken: HTTP, HTML und CSS (Crashkurs)
Umstieg auf .NET 8.0/9.0 - Entwicklerworkshop (Umstellung/Migration von klassischem .NET Framework zu .NET 6.0/8.0/9.0)
Atlassian JIRA
Grundlagen der objektorientierten Programmierung anhand von C# oder Visual Basic .NET
Konfigurationsinformationen in .NET und .NET Core
Java-Programmierung mit Lambdas und Streams
Umstieg auf WPF Core 8.0/9.0 in .NET 8.0/9.0 (Umstellung/Migration von WPF-Anwendungen von .NET Framework auf .NET 6.0/7.0/8.0)
Microsoft SQL Server - Automatisierung der Administration (Scripting)
Microsoft Exchange Server im Überblick (für Administratoren)
Java Enterprise (JEE) Frameworks
Windows 8/Windows 8.1 für Administratoren
Windows Vista für Entwickler (Programmieren für Windows Vista)
Active Directory für Administratoren
Bereitstellung und Management von BizTalk-Lösungen (Microsoft Biztalk Server für Administratoren)
Dojo Webframework
Softwarearchitektur - praktisch angewendet
Achtsamkeit – im Hamsterrad kommen Sie nicht weit
MySQL-Datenzugriff mit dem .NET Framework
Windows UI Library 3 (WinUI 3) für Umsteiger von WPF
Linux-Systemprogrammierung
Windows Server 2012 oder Windows Server 2012 R2 für Administratoren (Neuheiten gegenüber Windows Server 2008 R2)
Anfrage für eine individuelle Schulung zum Thema Regulä rer Ausdruck RA
Gesamter Schulungsthemenkatalog
Bücher zu diesem Thema
C# 13.0 Crashkurs
Moderne Datenzugriffslösungen mit Entity Framework Core 9.0
PowerShell 7 und Windows PowerShell 5 – das Praxishandbuch
Moderne Datenzugriffslösungen mit Entity Framework Core 8.0
C# 12.0 Crashkurs
C# 11.0 Crashkurs
Moderne Datenzugriffslösungen mit Entity Framework Core 7.0
PowerShell 7 und Windows PowerShell 5 – das Praxishandbuch
Vue.js 3 Crashkurs
Moderne Datenzugriffslösungen mit Entity Framework Core 6.0
C# 10.0 Crashkurs
Developing Web Components with TypeScript: Native Web Development Using Thin Libraries
C# 9.0 Crashkurs: Die Syntax der Programmiersprache C# für die Softwareentwicklung in .NET 5.0, .NET Core und Xamarin
Windows PowerShell 5 und PowerShell 7: Das Praxisbuch
Moderne Datenzugriffslösungen mit Entity Framework Core 5.0
Moderne Datenzugriffslösungen mit Entity Framework Core 3.1
C# 8.0 Crashkurs: Die Syntax der Programmiersprache C# für die Softwareentwicklung in .NET Framework, .NET Core und Xamarin
Moderne Datenzugriffslösungen mit Entity Framework Core 3.0
Windows PowerShell 5.1 und PowerShell Core 6.1 - Das Praxishandbuch
Moderne Datenzugriffslösungen mit Entity Framework Core 2.1/2.2
C# 7.3 Crashkurs: Die Syntax der Programmiersprache C# für die Softwareentwicklung in .NET Framework, .NET Core und Xamarin
Modern Data Access with Entity Framework Core: Database Programming Using .NET, .NET Core, UWP, and Xamarin with C#
Windows PowerShell und PowerShell Core - Der schnelle Einstieg: Skriptbasierte Systemadministration für Windows, Linux und macOS
Programmierung in Python
C# 7.2 Crashkurs: Die Syntax der Programmiersprache C# für die Softwareentwicklung in .NET Framework, .NET Core und Xamarin
Moderne Datenzugriffslösungen mit Entity Framework Core 2.0/2.1
Effizienter Datenzugriff mit Entity Framework Core: Datenbankprogrammierung mit C# für .NET Framework, .NET Core und Xamarin
Moderne Datenzugriffslösungen mit Entity Framework Core 2.0
Windows PowerShell 5 und PowerShell Core 6 - Das Praxishandbuch
Angular - Das Praxisbuch zu Grundlagen und Best Practices
Moderne Datenzugriffslösungen mit Entity Framework Core 1.0, 1,1 und 2.0
Moderne Datenzugriffslösungen mit Entity Framework Core 1.0, 1,1 und 2.0
Moderne Datenzugriffslösungen mit Entity Framework Core 1.1 und 2.0-Preview2
Moderne Datenzugriffslösungen mit Entity Framework Core 1.x und 2.0
Moderne Datenzugriffslösungen mit Entity Framework Core 1.x und 2.0
Introducing Bootstrap 4
Programming Web Applications with Node, Express and Pug
Einführung in TypeScript: Grundlagen der Sprache TypeScript 2
Web-Programmierung mit Node, Express und Pug
Moderne Datenzugriffslösungen mit Entity Framework Core 1.1
Windows PowerShell 5.0 - Das Praxishandbuch
PHP 7 und MySQL: Von den Grundlagen bis zur professionellen Programmierung
.NET Praxis - Tipps und Tricks für .NET und Visual Studio
Bootstrap 3 - Stile und Komponenten
Bootstrap 4 - Stile und Komponenten
Moderne Datenzugriffslösungen mit Entity Framework 6
Windows PowerShell 4.0 - Das Praxishandbuch
JavaScript: Das umfassende Handbuch, inkl. HTML5, JavaScript-Frameworks, jQuery, OOP
C++11 für Programmierer
Scripting mit Windows PowerShell 3.0 - Der Workshop: Skript-Programmierung mit Windows PowerShell 3.0 vom Einsteiger bis zum Profi
Windows 8 für Administratoren
Windows Store Apps entwickeln mit C# und XAML - Crashkurs
Datenbankprogrammierung mit .NET 4.5
C++11: Der Leitfaden für Programmierer zum neuen Standard
Datenbankprogrammierung mit .NET 4.0. Mit Visual Studio 2010 und SQL Server 2008 R2
Office 2010 Programmierung mit VSTO und .NET 4.0: Word, Excel und Outlook erweitern und anpassen
Programmieren mit dem ADO.NET Entity Framework
.NET 4.0 Crashkurs
Windows PowerShell 2.0 - Das Praxishandbuch
PHP 5-Migration
SQL Server 2008 R2: Das Programmierhandbuch. Inkl. ADO.NET 3.5, LINQ to Entities und LINQ to SQL
Windows PowerShell 2.0 - Crashkurs
Windows 7 für Administratoren
.NET 3.5 Crashkurs
Webanwendungen mit ASP.NET 3.5 und AJAX Crashkurs
Alle unsere aktuellen Fachbücher
E-Book-Abo für ab 99 Euro im Jahr