正規表現を使用した複雑なパターンでの C# での文字列分割をマスターする
この記事では、一般的なプログラミングの課題、つまりカンマを区切り文字として使用して文字列を分割しますが、そのカンマが引用符で囲まれていない場合に限ります。 このような不規則なデータ構造を扱う場合、標準的な文字列分割方法では不十分です。
正規表現ソリューション
解決策は正規表現の力にあります。次の正規表現パターンは、引用符で囲まれたセクションの外側にあるカンマを効果的に識別して分離します:
<code class="language-csharp">",(?=(?:[^']*'[^']*')*[^']*$)"</code>
このパターンは、残りの文字列内でカンマとその後に続く偶数個の一重引用符を巧みに検索します。これにより、引用符で囲まれたセクション内のカンマが確実に無視されます。
このパターンを適用して文字列を分割するのは簡単です:
<code class="language-csharp">var result = Regex.Split(inputString, ",(?=(?:[^']*'[^']*')*[^']*$)");</code>
result
配列には、目的の要素が正確に含まれます。
要約
正規表現は、複雑なパターンを含む文字列操作タスクに堅牢かつ柔軟なソリューションを提供します。 この方法は正確な制御を提供し、最も型破りな文字列形式であっても要素の正確な分割と抽出を可能にします。 この手法は、不規則な区切り文字を含むデータを処理する場合に非常に役立ちます。
以上がC# 正規表現では、引用符内を除き、区切り文字としてカンマを使用した文字列分割をどのように解決できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。