Regex.Match Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Söker i en indatasträng efter en delsträng som matchar ett mönster för reguljära uttryck och returnerar den första förekomsten som ett enskilt Match objekt.
Överlagringar
| Name | Description |
|---|---|
| Match(String) |
Söker i den angivna indatasträngen efter den första förekomsten av det reguljära uttryck som anges i Regex konstruktorn. |
| Match(String, Int32) |
Söker i indatasträngen efter den första förekomsten av ett reguljärt uttryck, med början vid den angivna startpositionen i strängen. |
| Match(String, String) |
Söker i den angivna indatasträngen efter den första förekomsten av det angivna reguljära uttrycket. |
| Match(String, Int32, Int32) |
Söker i indatasträngen efter den första förekomsten av ett reguljärt uttryck, med början vid den angivna startpositionen och söker bara efter det angivna antalet tecken. |
| Match(String, String, RegexOptions) |
Söker i indatasträngen efter den första förekomsten av det angivna reguljära uttrycket med hjälp av de angivna matchningsalternativen. |
| Match(String, String, RegexOptions, TimeSpan) |
Söker i indatasträngen efter den första förekomsten av det angivna reguljära uttrycket med hjälp av de angivna matchningsalternativen och tidsgränsintervallet. |
Match(String)
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
Söker i den angivna indatasträngen efter den första förekomsten av det reguljära uttryck som anges i Regex konstruktorn.
public:
System::Text::RegularExpressions::Match ^ Match(System::String ^ input);
public System.Text.RegularExpressions.Match Match(string input);
member this.Match : string -> System.Text.RegularExpressions.Match
Public Function Match (input As String) As Match
Parametrar
- input
- String
Strängen för att söka efter en matchning.
Returer
Ett objekt som innehåller information om matchningen.
Undantag
input är null.
En timeout inträffade.
Kommentarer
Metoden Match(String) returnerar den första delsträngen som matchar ett mönster för reguljära uttryck i en indatasträng.
Du kan avgöra om det reguljära uttrycksmönstret har hittats i indatasträngen genom att kontrollera det returnerade Match objektets Success egenskap. Om en matchning hittas innehåller det returnerade Match objektets Value egenskap den matchade delsträngen. Om ingen matchning hittas är dess värde Empty.
Den här metoden returnerar den första matchningen. Du kan hämta efterföljande matchningar genom att upprepade gånger anropa det returnerade Match objektets NextMatch() -metod. Du kan också hämta alla matchningar i ett enda metodanrop genom att anropa Matches(String).
Undantaget RegexMatchTimeoutException utlöses om körningstiden för matchningsåtgärden överskrider det tidsgränsintervall som angetts av Regex(String, RegexOptions, TimeSpan) konstruktorn. Om du inte anger ett tidsgränsintervall när du anropar konstruktorn utlöses undantaget om åtgärden överskrider ett timeout-värde som har upprättats för programdomänen Regex där objektet skapas. Om ingen tidsgräns har definierats i konstruktoranropet Regex eller i programdomänens egenskaper, eller om tidsgränsvärdet är InfiniteMatchTimeout, utlöses inget undantag.
Se även
Gäller för
Match(String, Int32)
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
Söker i indatasträngen efter den första förekomsten av ett reguljärt uttryck, med början vid den angivna startpositionen i strängen.
public:
System::Text::RegularExpressions::Match ^ Match(System::String ^ input, int startat);
public System.Text.RegularExpressions.Match Match(string input, int startat);
member this.Match : string * int -> System.Text.RegularExpressions.Match
Public Function Match (input As String, startat As Integer) As Match
Parametrar
- input
- String
Strängen för att söka efter en matchning.
- startat
- Int32
Den nollbaserade teckenposition där sökningen ska startas.
Returer
Ett objekt som innehåller information om matchningen.
Undantag
input är null.
startat är mindre än noll eller större än längden på input.
En timeout inträffade.
Kommentarer
Mer information om startatfinns i Kompletterande API-kommentarer för Regex.Match.
Se även
Gäller för
Match(String, String)
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
Söker i den angivna indatasträngen efter den första förekomsten av det angivna reguljära uttrycket.
public:
static System::Text::RegularExpressions::Match ^ Match(System::String ^ input, System::String ^ pattern);
public static System.Text.RegularExpressions.Match Match(string input, string pattern);
static member Match : string * string -> System.Text.RegularExpressions.Match
Public Shared Function Match (input As String, pattern As String) As Match
Parametrar
- input
- String
Strängen för att söka efter en matchning.
- pattern
- String
Det reguljära uttrycksmönster som ska matchas.
Returer
Ett objekt som innehåller information om matchningen.
Undantag
Ett fel uppstod vid parsning av reguljära uttryck.
input eller pattern är null.
En timeout inträffade.
Kommentarer
Den statiska Match(String, String) metoden motsvarar konstruera ett Regex objekt med det angivna mönstret och anropa instansmetoden Match(String) . Motorn för reguljära uttryck cachelagrar mönstret.
Du kan avgöra om det reguljära uttrycksmönstret har hittats i indatasträngen genom att kontrollera det returnerade Match objektets Success egenskap. Om en matchning hittas innehåller det returnerade Match objektets Value egenskap den matchade delsträngen. Om ingen matchning hittas är dess värde Empty.
Du kan hämta efterföljande matchningar genom att upprepade gånger anropa det returnerade Match objektets NextMatch() -metod. Du kan också hämta alla matchningar i ett enda metodanrop genom att anropa Matches(String, String) metoden.
Anteckningar till anropare
Den här metoden överskrider tidsgränsen efter ett intervall som är lika med standardvärdet för timeout för den programdomän där den anropas. Om ett timeout-värde inte har definierats för programdomänen används värdet InfiniteMatchTimeout, som förhindrar att metoden överskrider tidsgränsen. Den rekommenderade statiska metoden för att hämta en mönstermatchning är Match(String, String), vilket gör att du kan ange tidsgränsintervallet.
Se även
Gäller för
Match(String, Int32, Int32)
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
Söker i indatasträngen efter den första förekomsten av ett reguljärt uttryck, med början vid den angivna startpositionen och söker bara efter det angivna antalet tecken.
public:
System::Text::RegularExpressions::Match ^ Match(System::String ^ input, int beginning, int length);
public System.Text.RegularExpressions.Match Match(string input, int beginning, int length);
member this.Match : string * int * int -> System.Text.RegularExpressions.Match
Public Function Match (input As String, beginning As Integer, length As Integer) As Match
Parametrar
- input
- String
Strängen för att söka efter en matchning.
- beginning
- Int32
Den nollbaserade teckenpositionen i indatasträngen som definierar den vänstra positionen som ska sökas igenom.
- length
- Int32
Antalet tecken i understrängen som ska inkluderas i sökningen.
Returer
Ett objekt som innehåller information om matchningen.
Undantag
input är null.
beginning är mindre än noll eller större än längden på input.
-or- length är mindre än noll eller större än längden på input.
-or- beginning + length - 1 identifierar en position som ligger utanför intervallet inputför .
En timeout inträffade.
Kommentarer
Metoden Match(String, Int32, Int32) söker i den del av input som definierats av parametrarna beginning och length efter mönster för reguljära uttryck.
beginning definierar alltid indexet för det vänstra tecknet som ska inkluderas i sökningen och length definierar det maximala antalet tecken som ska sökas. Tillsammans definierar de sökintervallet. Beteendet är exakt som om indata var effektivt input.Substring(beginning, length), förutom att indexet för en matchning räknas i förhållande till början av input. Det innebär att alla fästpunkter eller nollbreddskontroller i början eller slutet av mönstret fungerar som om det inte finns några indata utanför det här intervallet.
Om sökningen fortsätter från vänster till höger (standardvärdet) söker reguljära uttrycksmotorn från tecknet vid indexet beginning till tecknet vid indexet beginning + length - 1. Om motorn för reguljära uttryck instansierades med hjälp RightToLeft av alternativet söker motorn från tecknet vid indexet beginning + length – 1 till tecknet vid indexet beginning.
Den här metoden returnerar den första matchningen som finns inom det här intervallet. Du kan hämta efterföljande matchningar genom att upprepade gånger anropa det returnerade Match objektets NextMatch() -metod.
Se även
Gäller för
Match(String, String, RegexOptions)
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
Söker i indatasträngen efter den första förekomsten av det angivna reguljära uttrycket med hjälp av de angivna matchningsalternativen.
public:
static System::Text::RegularExpressions::Match ^ Match(System::String ^ input, System::String ^ pattern, System::Text::RegularExpressions::RegexOptions options);
public static System.Text.RegularExpressions.Match Match(string input, string pattern, System.Text.RegularExpressions.RegexOptions options);
static member Match : string * string * System.Text.RegularExpressions.RegexOptions -> System.Text.RegularExpressions.Match
Public Shared Function Match (input As String, pattern As String, options As RegexOptions) As Match
Parametrar
- input
- String
Strängen för att söka efter en matchning.
- pattern
- String
Det reguljära uttrycksmönster som ska matchas.
- options
- RegexOptions
En bitvis kombination av uppräkningsvärdena som ger alternativ för matchning.
Returer
Ett objekt som innehåller information om matchningen.
Undantag
Ett fel uppstod vid parsning av reguljära uttryck.
input eller pattern är null.
options är inte en giltig bitvis kombination av RegexOptions värden.
En timeout inträffade.
Kommentarer
Den statiska Match(String, String, RegexOptions) metoden motsvarar konstruera ett Regex objekt med Regex(String, RegexOptions) konstruktorn och anropa instansmetoden Match(String) .
Du kan avgöra om det reguljära uttrycksmönstret har hittats i indatasträngen genom att kontrollera det returnerade Match objektets Success egenskap. Du kan hämta efterföljande matchningar genom att upprepade gånger anropa det returnerade Match objektets NextMatch() -metod. Du kan också hämta alla matchningar i ett enda metodanrop genom att anropa Matches(String, String, RegexOptions) metoden.
Anteckningar till anropare
Den här metoden överskrider tidsgränsen efter ett intervall som är lika med standardvärdet för timeout för den programdomän där den anropas. Om ett timeout-värde inte har definierats för programdomänen används värdet InfiniteMatchTimeout, som förhindrar att metoden överskrider tidsgränsen. Den rekommenderade statiska metoden för att hämta en mönstermatchning är Match(String, String), vilket gör att du kan ange tidsgränsintervallet.
Se även
Gäller för
Match(String, String, RegexOptions, TimeSpan)
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
- Källa:
- Regex.Match.cs
Söker i indatasträngen efter den första förekomsten av det angivna reguljära uttrycket med hjälp av de angivna matchningsalternativen och tidsgränsintervallet.
public:
static System::Text::RegularExpressions::Match ^ Match(System::String ^ input, System::String ^ pattern, System::Text::RegularExpressions::RegexOptions options, TimeSpan matchTimeout);
public static System.Text.RegularExpressions.Match Match(string input, string pattern, System.Text.RegularExpressions.RegexOptions options, TimeSpan matchTimeout);
static member Match : string * string * System.Text.RegularExpressions.RegexOptions * TimeSpan -> System.Text.RegularExpressions.Match
Public Shared Function Match (input As String, pattern As String, options As RegexOptions, matchTimeout As TimeSpan) As Match
Parametrar
- input
- String
Strängen för att söka efter en matchning.
- pattern
- String
Det reguljära uttrycksmönster som ska matchas.
- options
- RegexOptions
En bitvis kombination av uppräkningsvärdena som ger alternativ för matchning.
- matchTimeout
- TimeSpan
Ett tidsgränsintervall, eller InfiniteMatchTimeout för att indikera att metoden inte bör överskrida tidsgränsen.
Returer
Ett objekt som innehåller information om matchningen.
Undantag
Ett fel uppstod vid parsning av reguljära uttryck.
input eller pattern är null.
options är inte en giltig bitvis kombination av RegexOptions värden.
-or- matchTimeout är negativ, noll eller större än cirka 24 dagar.
En timeout inträffade.
Kommentarer
Den statiska Match(String, String, RegexOptions, TimeSpan) metoden motsvarar konstruera ett Regex objekt med Regex(String, RegexOptions, TimeSpan) konstruktorn och anropa instansmetoden Match(String) .
Du kan avgöra om det reguljära uttrycksmönstret har hittats i indatasträngen genom att kontrollera det returnerade Match objektets Success egenskap. Du kan hämta efterföljande matchningar genom att upprepade gånger anropa det returnerade Match objektets NextMatch() -metod.
Parametern matchTimeout anger hur länge en mönstermatchningsmetod ska försöka hitta en matchning innan tidsgränsen uppnås. Om du anger ett tidsgränsintervall förhindras reguljära uttryck som förlitar sig på överdriven bakåtspårning från att verka sluta svara när de bearbetar indata som innehåller nära matchningar. Om ingen matchning hittas i det tidsintervallet utlöser metoden ett RegexMatchTimeoutException undantag.
matchTimeout åsidosätter alla standardvärden för timeout som definierats för programdomänen där metoden körs.
Anteckningar till anropare
Vi rekommenderar att du anger parametern matchTimeout till ett lämpligt värde, till exempel två sekunder. Om du inaktiverar tidsgränser genom att ange ger motorn för reguljära InfiniteMatchTimeoututtryck något bättre prestanda. Du bör dock inaktivera tidsgränser endast under följande villkor:
När indata som bearbetas av ett reguljärt uttryck härleds från en känd och betrodd källa eller består av statisk text. Detta exkluderar text som har matats in dynamiskt av användare.
När mönstret för reguljära uttryck har testats noggrant för att säkerställa att det effektivt hanterar matchningar, icke-matchningar och nära matchningar.
När det reguljära uttrycksmönstret inte innehåller några språkelement som är kända för att orsaka överdriven bakåtspårning vid bearbetning av en nära matchning.