C#:
Tekstin etsiminen ja korvaaminen
How to (Kuinka tehdä):
using System;
using System.Text.RegularExpressions;
class Program {
static void Main() {
string sourceText = "Hello, World!";
string pattern = "World";
string replacement = "Finland";
// Perus string.Replace
string result = sourceText.Replace(pattern, replacement);
Console.WriteLine(result); // Output: Hello, Finland!
// Regex.Replace monimutkaisempia toimintoja varten
pattern = @"\bWorld\b";
result = Regex.Replace(sourceText, pattern, replacement);
Console.WriteLine(result); // Output: Hello, Finland!
}
}
Deep Dive (Syväsukellus):
Tekstinkorjailu on vanha juttu, alkaen paperilta kynällä tehdystä korjaamisesta aina tietokoneiden tekstinkäsittelyohjelmiin. C#:ssa String.Replace()
on suoraviivainen tapa korvata tekstiä, kun taas Regex.Replace()
antaa voimaa mallintaa monimutkaisempia kaavoja ja ehtoja.
Vaihtoehtoisia metodeja ovat StringBuilder-luokka ja LINQ-operaatiot, jos suorituskyky on tärkeää tai data on kompleksisempaa. Toteutuksessa kannattaa huomioida myös merkistöjen (kuten UTF-8) ja kulttuurillisten erojen (kuten erilaiset aakkostot) vaikutus hakuun ja korvaukseen.
See Also (Katso myös):
- Microsoft Docs: String.Replace Method
- Microsoft Docs: Regex.Replace Method
- Stack Overflow: When to use StringBuilder?
- CodeProject: Manipulating Strings in C#