欲长期混迹于此,小散一下 再穷不能穷教育! 问侯各位!

CODE163 2008-09-15 04:17:35
C++当年从这个入手学得编程 不过现在看来两年都没用上!不过我还是喜欢呵呵!

只是当年的老师都不在了(别误会,是我不在学校了!),故来MSDN向各位讨教,还请多多赐教!

留个问题:

如何从一个字符串中读取出其中的网页连接

比如我发送HTTP请求给GOOGLE然后GOOGLE返回的页面我全部读取到一个STR中(我不是问这个,是问下边的)

这个STR中是GOOGLE返回的HTML 我怎么从中提取出所有一下形式的连接

以HTTP开头
以ASP,ASPX,PHP结束有参数的要读上参数比如
http://www.xxxxxx.com/kao.aspx
http://www.xxxxxx.com/kao.aspx?id=2(读出一个参数就OK)
这种没有文件名的不用读取如
http://www.xxxxxx.com/ , http://www.xxxxxx.com

从功能上说就是我要写个工具 向Google提交关键字 读取返回的页面 然后从这个页面里提取出符合条件的连接地址!暂时不用考虑去掉重复之类的问题!只是做到能共读取识别出连接地址即可!

那位仙人指下路!不急!
...全文
144 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
keyayi 2008-09-18
  • 打赏
  • 举报
回复
回帖是一种美德!传说每天回帖即可获得 10 分可用分!
zhulinjia 2008-09-18
  • 打赏
  • 举报
回复
回帖是一种美德!传说每天回帖即可获得 10 分可用分
Joooe 2008-09-18
  • 打赏
  • 举报
回复
回帖是一种美德!传说每天回帖即可获得 10 分可用分
CODE163 2008-09-16
  • 打赏
  • 举报
回复
心里有了个办法呵呵···回头去试试 结贴!
baihacker 2008-09-15
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 CODE163 的回复:]
真的这么深奥- -! 我只是想适合一下这个程序 不需要正则那么强大的功能 更不希望打包一个库!呵呵 能不能脱离正则的思想 也许有什么技巧 正在想 就是偶太菜了 连一般的字符串处理函数都要GOOGLE 估计想不出什么呵呵~~ 感谢baihacker 学习了!
[/Quote]
当你能些一个正则式引擎就知道了。
实在不会可以先参考《编译原理》
上面讲了算法。

在这里,不需要把正则文法,DFA,NFA间的转换实现,只需要你懂这些,然后直接些一个DFA,也就是说在程序中体现:
当前状态+当前遇到的字符->动作
这样一个映射就行了。
backway 2008-09-15
  • 打赏
  • 举报
回复
up
fallening 2008-09-15
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 ttkk_2007 的回复:]
MSDN
====
CSDN
[/Quote]
这个帖子里边还不是星星,出去就是了
好快~~
CODE163 2008-09-15
  • 打赏
  • 举报
回复
真的这么深奥- -! 我只是想适合一下这个程序 不需要正则那么强大的功能 更不希望打包一个库!呵呵 能不能脱离正则的思想 也许有什么技巧 正在想 就是偶太菜了 连一般的字符串处理函数都要GOOGLE 估计想不出什么呵呵~~ 感谢baihacker 学习了!
richbirdandy 2008-09-15
  • 打赏
  • 举报
回复
来错地了 呵呵
baihacker 2008-09-15
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 CODE163 的回复:]
提高下难度,忘了说明 不使用正则!最好纯C! 不使用正则不能实现?高人有办法吗?
[/Quote]
自己实现正则式引擎,或则利用其思想,写一个只适合在这里用的识别程序。
正则语言很好处理的。
baihacker 2008-09-15
  • 打赏
  • 举报
回复
[Quote=引用楼主 CODE163 的帖子:]
C++当年从这个入手学得编程 不过现在看来两年都没用上!不过我还是喜欢呵呵!

只是当年的老师都不在了(别误会,是我不在学校了!),故来MSDN向各位讨教,还请多多赐教!

留个问题:

如何从一个字符串中读取出其中的网页连接

比如我发送HTTP请求给GOOGLE然后GOOGLE返回的页面我全部读取到一个STR中(我不是问这个,是问下边的)

这个STR中是GOOGLE返回的HTML 我怎么从中提取出所有一下形式的连接

以…
[/Quote]

boost::regex
太乙 2008-09-15
  • 打赏
  • 举报
回复
顶!
CODE163 2008-09-15
  • 打赏
  • 举报
回复
提高下难度,忘了说明 不使用正则!最好纯C! 不使用正则不能实现?高人有办法吗?
fallening 2008-09-15
  • 打赏
  • 举报
回复
google Regular expression
ttkk_2007 2008-09-15
  • 打赏
  • 举报
回复
MSDN
====
CSDN

64,637

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧