私は.NETで有効な正規表現パターンを持っている:クエリ文字列がparam1=value1
IIS UrlRewrite正規表現の違い
param2=
が含まれていないが含まれてい
- :あれば一致する
(?>.*param1=value1.*)(?<!.*param2=\d+.*)
番号
.NETで動作します。しかし、IIS URLRewriteは、それが有効なパターンではないと不満を表明します。
IIS URLRewriteで式(?<! )
の背後にゼロ幅の負の表情を使用できませんか?
私は両方のweb.configファイルでこのパターンを適用しようとしました。注(適切にそれぞれ<
に<
と>
を変更し>
だけでなく、IISマネージャで - すべての成功なし
'^(?!。* param2 = \ d)。* param1 = value1'と単純化できませんか?または、文字列全体をマッチさせる必要がある場合は、 '。*': '^(?!。* param2 = \ d)。* param1 = value1。*' –
@WiktorStribiżewありがとう!これは動作します!しかし、その違いについては疑問が残っています。私は、使用された2つのRegExエンジンは同等であると考えました。 –
いいえ、ご覧のとおり、構文が異なります。 –