前提・実現したいこと
「abc$def$ghi$jkl$mno」のような文字列があります。
**「$~$」で囲まれた文字列「以外」**を削除したいです。
例の文字列なら、「$def$$jkl$」のような結果がほしいです(ghiは対象外)。
発生している問題・エラーメッセージ
否定先読み(?!$.*?$) でマッチしたものを削除しようとすると、
「abc$def$ghi$jkl$mno」となり、意図した結果になりません。
該当のソースコード
C#
string srcStr = "abc$def$ghi$jkl$mno"; string ptn = @"(?!$.*?$)"; System.Text.RegularExpressions.Regex reg = new System.Text.RegularExpressions.Regex(ptn); var result = reg.Replace(srcStr, "");
試したこと
以下の正規表現だと、result = "abcghimno" となり、「$~$」文字列の削除ができます。
ですが「それ以外」の削除方法が分かりません。よろしくお願いいたします。
string srcStr = "abc$def$ghi$jkl$mno"; string ptn = @"($.*?$)"; System.Text.RegularExpressions.Regex reg = new System.Text.RegularExpressions.Regex(ptn); var result = reg.Replace(srcStr, "");
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/01/22 03:23
2020/01/22 03:30
2020/01/22 03:39
2020/01/22 05:13