【发布时间】:2012-07-29 20:39:03
【问题描述】:
我已经搜索了至少 2 小时,但我找不到任何模式来使用正则表达式提取以下网址。我使用了许多文章中描述的太多模式。但我找不到有用的东西。
例如:如下模式的网址。
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¶m1=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 模式。 请,任何建议都会有所帮助。
【问题讨论】:
-
从哪里提取它们?从中提取什么?
-
什么样的字符串?有什么例子吗?
-
@Oded 例如 WebRequest 标头包含 Host : 'google.com'。我想从 WebRequest 标头中提取它们。
-
这仍然不是很丰富 - 如果你有标题,我假设你可以解析包含 URL 的特定标题。此外,正则表达式应针对正在搜索的数据进行定制,因此如果没有完整的输入和输出示例,很难给您一个好的答案。
-
什么不起作用?你还没有给出问题的完整描述。如果没有我问过的完整详细信息,我无法给你任何答案(你只举了一个例子,没有解释预期的输出,也没有给出更复杂的例子) .