クライアントのブラウザからHTTP "Via"タグを解析する際に問題があります。 これは私が得たHTTPヘッダの例です:Regex-match HTTP経由のタグ
GET/HTTP/1.0
Accept: application/x-ms-application, image/jpeg, application/xaml+xml, image/gif, image/pjpeg, application/x-ms-xbap, application/x-shockwave-flash, */*
Accept-Language: sr-Latn-RS
User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; MATM; AskTbGOM2/5.8.0.12304)
Accept-Encoding: gzip, deflate
Host: 10.0.1.7
Via: 1.1 smtp.local:3128 (squid/2.6.STABLE21)
X-Forwarded-For: 10.0.0.75
Cache-Control: max-age=259200
Connection: keep-alive
は今、私はこのヘッダからsmtp.local:3128
一部を取得する必要がありますが、私が書いた正規表現は動作しません。 C#(doesntの仕事)に書き込ま
例パターン:
string matchHttpVia = @"Via: 1.1 (\.+:\d+)";
も注意IPの代わりにホスト名が存在することができました。
なぜ最初のドットをバックスラッシュしますか? '/ Via:1.1(。*:\ d +)/'はうまくいくでしょうか? – Konerak