C#で使用しようとしています
var added = Regex.Match(Text,
"\[BEGINTAG\](.+?)\[\/ENDTAG\]",RegexOptions.None);
タグ[BEGINTAG]と[/ENDTAG]の間の文字列をテキスト文字列で返します。正規表現定数の何が問題になっているのかわかりません。
あなたの正規表現は良いです。グループ1(括弧の間に一致するもの)を抽出する必要があります
C#ではこれは次のようになります
Regex regexObj = new Regex(@"\[BEGINTAG\](.+?)\[/ENDTAG\]");
resultString = regexObj.Match(subjectString).Groups[1].Value;
これが機能するかどうか教えてください
また、参考までに、あなたはあなたがするほど逃げる必要はありません。これも良いです:
\[BEGINTAG](.+?)\[/ENDTAG]
@
考えられる問題の1つは、文字列の前にaがないため、C#は\
文字を正規表現エスケープではなくC#エスケープとして処理していることです。
Buckleyの答えは、文字列の前に正規表現エスケープとして処理される@
ようにする方法を示しています。\
ほとんどの場合、C#の正規表現にはこの形式を使用することをお勧めします。そうでなければ、あなたはこのようなものになってしまいます。
var added = Regex.Match(Text,
"\\[BEGINTAG\\](.+?)\\]\\/ENDTAG\\]", RegexOptions.None);
読みづらいと思います。