4

CSharp で正規表現を使用して、2 つのキーワードの間にテキストを取得しようとしています。私はすでに同じ見出しのトピックを見つけましたが、それは角かっこの間のテキストを見つけることに関するものでした。これはかなり簡単です\[(?<blah>[^\]]+?)\]

私がやろうとしているのは、で単語を見つけることMatched text 123./!ですUnMatched text 123./!team。したがって、区切り文字はUnandteamです。Un慣れ親しんだ方法で RegEx を構築する場合、最初の開始区切り文字team、最後の終了区切り文字、および(?<blah>...+?)「文字列以外のすべて」と言うグループの3 つの部分をもう一度行う必要がありますteam。しかし、これを正規表現で表現する方法がわかりません。

「これらの文字のいずれでもない」の代わりに「この文字列ではない」と言う方法はありますか? また、正規表現の実装間の違いについても知らないためSystem.Text.RegularExpressions.RegEx、.NET フレームワークを使用してそれらを解析しているので、もちろんサンプルはこの実装で動作するはずです。

4

1 に答える 1

9

この構文を使用できます

(?s)(?<=start_delim).+?(?=end_delim)

start_delim必要に応じて交換するだけend_delimです。この点に関する詳細については、こちらをご覧ください。

于 2012-07-20T07:56:52.020 に答える