C#:
Bruke regulære uttrykk
Hvordan:
Enkel Mønstersøking
For å sjekke om en streng inneholder et spesifikt mønster, kan du bruke Regex.IsMatch
-metoden fra System.Text.RegularExpressions
navneområdet.
using System;
using System.Text.RegularExpressions;
class Program
{
static void Main()
{
string sampleText = "Hello, World!";
string pattern = "World";
bool containsPattern = Regex.IsMatch(sampleText, pattern);
Console.WriteLine(containsPattern); // Utdata: True
}
}
Trekke Ut Data
Å trekke ut data fra en streng ved bruk av grupper i et regex kan gjøres med Regex.Match
-metoden.
using System;
using System.Text.RegularExpressions;
class Program
{
static void Main()
{
string sampleText = "Dato: 2023-04-12";
string pattern = @"Dato: (\d{4})-(\d{2})-(\d{2})";
Match match = Regex.Match(sampleText, pattern);
if (match.Success)
{
Console.WriteLine($"År: {match.Groups[1].Value}"); // Utdata: År: 2023
Console.WriteLine($"Måned: {match.Groups[2].Value}"); // Utdata: Måned: 04
Console.WriteLine($"Dag: {match.Groups[3].Value}"); // Utdata: Dag: 12
}
}
}
Erstatte Tekst
Regex.Replace
-metoden lar deg erstatte tekst i en streng som matcher et spesifisert mønster.
using System;
using System.Text.RegularExpressions;
class Program
{
static void Main()
{
string sampleText = "Besøk Microsoft!";
string pattern = "Microsoft";
string replacement = "Google";
string result = Regex.Replace(sampleText, pattern, replacement);
Console.WriteLine(result); // Utdata: Besøk Google!
}
}
Splitte Strenger
Du kan splitte en streng i et array basert på et regex-mønster ved bruk av Regex.Split
-metoden.
using System;
using System.Text.RegularExpressions;
class Program
{
static void Main()
{
string sampleText = "en,to,tre,fire,fem";
string pattern = ",";
string[] result = Regex.Split(sampleText, pattern);
foreach (string item in result)
{
Console.WriteLine(item);
}
// Utdata:
// en
// to
// tre
// fire
// fem
}
}
Bruke Tredjepartsbiblioteker
Selv om .NET-rammeverket gir omfattende støtte for regulære uttrykk, finnes det også tredjepartsbiblioteker som PCRE.NET
som tilbyr Perl-kompatible regulære uttrykk (PCRE) i C#. Dette kan være nyttig hvis du trenger funksjoner eller syntaks fra Perls regex-motor som ikke er tilgjengelig i .NETs implementering.
For å bruke PCRE.NET
, må du først installere dets NuGet-pakke, og deretter kan du bruke det på lignende måte som du bruker de native .NET regex-klassene.
// Eksempel ved bruk av PCRE.NET her
// Merk: Forestill deg et eksempel lignende de over, skreddersydd for å vise en funksjon unik for PCRE.NET.
Når du integrerer tredjepartsbiblioteker for regulære uttrykk, bør du alltid konsultere deres dokumentasjon for detaljert bruk og kompatibilitetsinformasjon.