名前空間 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 件のコメント:
コメントを投稿