Weiterführende Infos: Link
string sInput = "#+123abcABC/"; // alle Zeichen außer Kleinbuchstaben, Großbuchstaben, // Zahlen und Leerzeichen zu "_" ersetzen // Ergebnis: "__123abcABC_" string sOutput = Regex.Replace(sInput, @"[^a-zA-Z0-9\s]", "_");
Weiterführende Infos: Link
string sInput = "#+123abcABC/"; // alle Zeichen außer Kleinbuchstaben, Großbuchstaben, // Zahlen und Leerzeichen zu "_" ersetzen // Ergebnis: "__123abcABC_" string sOutput = Regex.Replace(sInput, @"[^a-zA-Z0-9\s]", "_");
using System.Text.RegularExpressions;
// Datum der Form "tt.mm.jjjj"
// jede Gruppe muss genau 1x vorkommen
// Tag: 1., 01. - 31.
// .
// Monat: 1., 01. - 12.
// .
// Jahr: 1900, 1980, 2000, 2009 ...
Regex rex = new Regex("^(0[1-9]|[1-9]|[12][0-9]|3[01]){1}\\.(0[1-9]|[1-9]|1[012]){1}\\.((19|20){1}[0-9]{2}){1}$", RegexOptions.None);
if (rex.IsMatch("1.1.2009"))
{
// Datum ok
}
using System.Text.RegularExpressions;
// 1 oder mehrere bel. Zeichen aus [a-zA-Z0-9_\\.]
// @
// 1 oder mehrere bel. Zeichen aus [a-zA-Z_]
// .
// 2-6 Zeichen aus [a-zA-Z]
Regex rex = new Regex("^([a-zA-Z0-9_\\.]+@[a-zA-Z_]+?\\.[a-zA-Z]{2,6})$", RegexOptions.None);
if (rex.IsMatch("horst_01.horstmann_1980@superdomain.com"))
{
// Email korrekt
}
Ausdrücke
[abc] einzelner Buchstabe a, b, oder c
[^abc] einzelner Buchstabe außer a, b, oder c
[0-9] alle Zahlen von 0-9
[a-z] alle Buchstaben von a-z
[a-zA-Z] alle Buchstaben von a-z oder A-Z
\s Leerzeichen [ \t\n\r\f\v]
\S Nicht-Leerzeichen [^ \t\n\r\f\v]
\d Dezimalziffer [0-9]
\D Nicht-Dezimalziffer [^0-9]
\w beliebiges Wortzeichen [a-zA-Z0-9_]
\W beliebiges Nicht-Wortzeichen [^a-zA-Z0-9_]
\b Position zwischen \w und \W, z.B. Anfang und Ende eines Wortes
\B eine Position nicht zwischen \w und \W
| Trennung mehrerer Möglichkeiten
() Gruppierung für Wiederholungsoperatoren
^ Stringanfang
$ Stringende
Quantifizierer
* 0 oder mehr Wiederholungen des vorangegangenen Musters
+ 1 oder mehr Wiederholungen des vorangegangenen Musters
? 0 oder 1 Wiederholung des nachfolgenden Musters
{n} genau n Wiederholungen des vorangegangenen Musters
{n,} mindestens n Wiederholungen des vorangegangenen Musters
{n,m} mindestens n und höchstens m Wiederholungen des vorangegangenen Musters
Weiterführende Infos: Link
using System.Text.RegularExpressions;
using System.Globalization;
// akt. Dezimalseparator, hier i.d.R.: ","
string sDS = NumberFormatInfo.CurrentInfo.NumberDecimalSeparator;
// n Zahlen, gefolgt von 0 oder 1 Dezimalseparator, gefolgt von n Zahlen
Regex rex = new Regex("^[0-9]*" + sDS + "?[0-9]*$", RegexOptions.None);
if (rex.IsMatch("3,6789"))
{
// Zahl ok
}