0

少なくとも2時間検索していますが、正規表現を使用して次のURLを抽出するためのパターンが見つかりません。多くの記事で説明されているパターンが多すぎます。しかし、私は何か役に立つものを見つけることができませんでした。

例:次のパターンのようなURL。

http://google.com
http://www.google.com
http://www.image.google.com
http://google.com:8080
http://google.com:8080/default.aspx?param=1
http://google.com/default.aspx?param=1&param1=2

更新:親愛なる友人、私は私の問題をより詳細に説明する必要があるようです、私はTCPコンポーネントを使用する単純なプロキシサーバーで作業しています、私のサーバーは着信接続が受信されたときに特定のポートをリッスンします。すべてのクライアントリクエストデータを抽出して読み取っています。データには、次のようなヘッダーやコンテンツタイプなどが含まれます。

GET http://www.bing.com/ HTTP/1.1
Accept: text/html, application/xhtml+xml, */*
Accept-Language: en-US,en;q=0.7,fa;q=0.3
User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)
Accept-Encoding: gzip, deflate
Host: www.bing.com
DNT: 1
Proxy-Connection: Keep-Alive

これらはプレーンテキストなので、転送操作を行うためにURLを見つけて抽出する必要があります。

そして、あなたが推測する任意のURLパターン。どうか、どんなアドバイスも役に立ちます。

4

2 に答える 2

3

https?://[\w\.]+\.\w+(:\d{1,5})?(/[\w?&.=]+)?

于 2012-07-29T20:43:06.567 に答える
0

サラム。これを試してください:

https?://[^\s]+
于 2012-07-29T22:02:05.023 に答える