正則表達式是可以與輸入文本匹配的模式。 .Net框架提供了允許這種匹配的正則表達式引擎。 模式由一個或多個字符文字,運算符或構造組成。
有各種類別的字符,運算符和構造,允許您定義正則表達式。 單擊以下鏈接以查找這些結構。
正則表達式類用于表示一個正則表達式。
正則表達式類有以下常用方法:
SN | 方法和說明 |
---|---|
1 | Public Function IsMatch (input As String) As Boolean 表示在正則表達式構造函數(shù)中指定的正則表達式是否發(fā)現(xiàn)在指定的輸入字符串匹配。 |
2 | Public Function IsMatch (input As String, startat As Integer ) As Boolean 公共函數(shù)IsMatch(輸入作為字符串,startat作為整數(shù))作為布爾 指示在Regex構造函數(shù)中指定的正則表達式是否在指定的輸入字符串中找到匹配項,從字符串中指定的起始位置開始。 |
3 | Public Shared Function IsMatch (input As String, pattern As String ) As Boolean 公共共享函數(shù)IsMatch(輸入作為字符串,圖案作為字符串)作為布爾 指示指定的正則表達式是否在指定的輸入字符串中找到匹配項。 |
4 | Public Function Matches (input As String) As MatchCollection 公共函數(shù)匹配(輸入作為字符串)作為MatchCollection 搜索指定的輸入字符串以查找正則表達式的所有出現(xiàn)。 |
5 | Public Function Replace (input As String, replacement As String) As String 公共函數(shù)替換(輸入作為字符串,更換作為字符串)作為字符串 在指定的輸入字符串中,使用指定的替換字符串替換與正則表達式模式匹配的所有字符串。 |
6 | Public Function Split (input As String) As String() 公共函數(shù)(輸入作為字符串)作為字符串() 將輸入字符串插入到由正則表達式構造函數(shù)中指定一個正則表達式模式定義的位置的子字符串數(shù)組。 |
有關方法和屬性的完整列表,請參閱Microsoft文檔。
以下示例匹配以“S”開頭的單詞:
Imports System.Text.RegularExpressions
Module regexProg
Sub showMatch(ByVal text As String, ByVal expr As String)
Console.WriteLine("The Expression: " + expr)
Dim mc As MatchCollection = Regex.Matches(text, expr)
Dim m As Match
For Each m In mc
Console.WriteLine(m)
Next m
End Sub
Sub Main()
Dim str As String = "A Thousand Splendid Suns"
Console.WriteLine("Matching words that start with 'S': ")
showMatch(str, "\bS\S*")
Console.ReadKey()
End Sub
End Module
當上述代碼被編譯和執(zhí)行時,它產生了以下結果:
Matching words that start with 'S': The Expression: SS* Splendid Suns
以下示例匹配以“m”開頭并以“e”結尾的單詞:
Imports System.Text.RegularExpressions
Module regexProg
Sub showMatch(ByVal text As String, ByVal expr As String)
Console.WriteLine("The Expression: " + expr)
Dim mc As MatchCollection = Regex.Matches(text, expr)
Dim m As Match
For Each m In mc
Console.WriteLine(m)
Next m
End Sub
Sub Main()
Dim str As String = "make a maze and manage to measure it"
Console.WriteLine("Matching words that start with 'm' and ends with 'e': ")
showMatch(str, "\bm\S*e\b")
Console.ReadKey()
End Sub
End Module
當上述代碼被編譯和執(zhí)行時,它產生了以下結果:
Matching words start with 'm' and ends with 'e': The Expression: mS*e make maze manage measure
此示例替換了額外的空白空間:
Imports System.Text.RegularExpressions Module regexProg Sub Main() Dim input As String = "Hello World " Dim pattern As String = "s+" Dim replacement As String = " " Dim rgx As Regex = New Regex(pattern) Dim result As String = rgx.Replace(input, replacement) Console.WriteLine("Original String: {0}", input) Console.WriteLine("Replacement String: {0}", result) Console.ReadKey() End Sub End Module
當上述代碼被編譯和執(zhí)行時,它產生了以下結果:
Original String: Hello World Replacement String: Hello World
更多建議: