これは複製ではないことを願っています。正規表現 - 文字列内に特定の文字列が含まれていない
正規表現を使用して検索すると、文字列のどこにでも単語 'bot'が含まれてはならないと言うことができますか?
私は他の場所で否定的な先読みを使用していますが、問題は「bot」という単語がどこに表示されるのかわかりません。より長い言葉の一部でも、始まりに、終わりに、あるいはその両方に現れることもあります。私は残りの表現と一致する結果を含めるだけでなく、 'bot'も除外したい。
これは私の現在の検索式である:
2017-0[2-5] (.*) (UserInfo.aspx UID=111 80 -)=(?!10. *)+. *
そして、私が探していた結果は、一般的に次のようになります。
2017-02-16 15:56:00 10.3.1.17 GET /UserInfo.aspx UID=111 80 - 157.85.39.17 Mozilla/5.0+(compatible;+bingbot/2.0;++http://www.bing.com/bingbot.htm) 200 0 0 390
それはが含まれているとして、理想的には、私はこの結果が除外されるようにしたいと思います私のRegExの最初の部分とまだ一致しています。
あなたの質問は不明です。あなたは全体の行を一致させ、キャプチャグループを使って部分を抽出していますか?あなたのパターンの始めに '^(?!。bot)'を追加してみてください。 'bot'部分文字列を含む全ての行に失敗します。 –
あなたの正規表現はこのテキストと一致しません – Mistalis
私の正規表現にスペースを追加する必要がありました。なぜなら、Chromeは角括弧とアスタリスクを無視していたので、例が正しく表示されていないことがわかります – RProcter