Na použitie triedy Regex je potrebné odkazovať na menný priestor: pomocou System.Text.RegularExpressions;
Validácia je implementovaná pomocou triedy Regex
Príklad 1: Anotovaný kód robí to isté, ale jedna je statická metóda a druhá inštancia
var source = "Liu Bei, Guan Yu, Zhang Fei, Sun Quan"; Regex regex = nový Regex ("Sun Quan"); ak (regex. IsMatch(zdroj)) //{ Console.WriteLine("Reťazec obsahuje citlivé slová: Sun Quan!) ); //} if (Regex.IsMatch(zdroj, "Sun Quan"))
{ Console.WriteLine("Reťazec obsahuje citlivé slová: Sun Quan!) );
} Console.ReadLine();
Príklad 2: Pri použití konštruktora s dvoma parametrami druhý parameter označuje prípad ignorovania a bežne sa používa
var source = "123abc345DEf"; Regex regex = nový Regex("def",RegexOptions.IgnoreCase); ak (regex. IsMatch(zdroj))
{ Console.WriteLine("Reťazec obsahuje citlivé slová: def!) );
} Console.ReadLine();
Použite triedu Regex na jej nahradenie
Príklad 1: Jednoduchá situácia
zdroj var = "123abc456ABC789"; Statická metóda var newSource=Regex.Replace(source,"abc","|",RegexOptions.IgnoreCase); Inštancia metódy Regex regex = nový Regex("abc", RegexOptions.IgnoreCase); var newSource = regex. Replace(source, "|"); Console.WriteLine("Pôvodný reťazec:"+source); Console.WriteLine("Nahradený reťazec:"+newSource); Console.ReadLine();
Výsledok:
Pôvodný reťazec: 123abc456ABC789
Vymenená šnúra: 123|456|789
Príklad 2: Nahradením zodpovedaných možností html kódom sme použili delegáciu MatchEvaluator
var source = "123abc456ABCD789"; Regex regex = nový Regex ("[A-Z]{3}", RegexOptions.IgnoreCase); var newSource = regex. Replace(source,new MatchEvaluator(OutPutMatch)); Console.WriteLine("Pôvodný reťazec:"+source); Console.WriteLine("Nahradený reťazec:"+newSource); Console.ReadLine();
súkromný statický reťazec OutPutMatch (Match match)
{ vráť "<b>" +zhoda. Value+ "</b>"";
}
Výstup:
Pôvodný reťazec: 123abc456ABCD789
Vymenená struna: 123<b>abc</b>456<b>ABC</b>D789 |