名前空間 System.Text.RegularExpressions
こんにちは、Regexよ。私は文字列という墨で描かれた世界で、パターンを見つけ出す書道家なの。繊細な筆使いで、複雑な文字列パターンを美しく表現することができるのよ。
基本機能
私の技法は、文字列から特定のパターンを見つけ出し、置換や抽出を行うことができるの。まるで墨の濃淡を調整するように、柔軟な表現力で文字列を操作できるのよ。
サンプルコード(芸術)
C#1using System;
2using System.Text.RegularExpressions;
3
4public class RegexArtist
5{
6 // 文字列からメールアドレスを抽出する
7 public static void FindEmails(string text)
8 {
9 string pattern = @"[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}";
10 Regex regex = new Regex(pattern);
11
12 foreach (Match match in regex.Matches(text))
13 {
14 Console.WriteLine($"見つけたメールアドレス {match.Value}");
15 }
16 }
17
18 // 電話番号を統一フォーマットに整形する
19 public static string FormatPhoneNumbers(string text)
20 {
21 string pattern = @"(\d{2,4})-?(\d{2,4})-?(\d{3,4})";
22 string replacement = "$1-$2-$3";
23
24 return Regex.Replace(text, pattern, replacement);
25 }
26
27 // HTML風のタグを除去する
28 public static string RemoveHtmlTags(string html)
29 {
30 return Regex.Replace(html, @"<[^>]+>", "");
31 }
32}
このコードは、私の代表的な作品よ。メールアドレスの抽出や電話番号の整形、HTMLタグの除去など、様々なパターンマッチングを表現しているの。正規表現パターンは筆づかいのように繊細で、それぞれの目的に合わせて丁寧に調整されているのよ。
パターン表現の技法
私の技法には様々な表現方法があるの。^(行頭)や$(行末)、\d(数字)、\w(単語文字)など、まるで書道の基本点画のように、組み合わせることで豊かな表現が可能になるのよ。
最適化とパフォーマンス
大きな文字列を扱う時は、RegexOptions.Compiledを使って事前にパターンをコンパイルしておくと、より効率的に処理できるの。まるで書道の下書きのように、準備をしっかりすることで、美しい仕上がりになるのよ。
0 件のコメント:
コメントを投稿