首页 / 正则 / 正则采集问题,求解,在线等
正则采集问题,求解,在线等
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了正则采集问题,求解,在线等,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含5149字,纯文字阅读大概需要8分钟。
内容图文
![正则采集问题,求解,在线等](/upload/InfoBanner/zyjiaocheng/195/8d3b63229167455aac79692af34312c2.jpg)
查看其网页源码,想得到425行的数据,即“今天是2013年10月16日 星期三 农历九月十二”和621行“沈阳天气预报 (2013-10-16 18:00发布)" 和641行~765行之间主要数据。用图表示一下,见下图:
另外我自己写的一条规则,试着取了下这样的数据"沈阳天气预报 (2013-10-16
11:00发布)"但输入后为空数组,求指导!多谢!
回复讨论(解决方案)
1
$s=file_get_contents('http://www.weather.com.cn/weather/101070101.shtml');preg_match('/\s+(.+)\s+<\!--today5-->/s',$s,$m);echo $m[1];
2
preg_match('/\s+\s+(.+?)\s+/s',$s,$m);echo $m[1];
3 不知道你想要得到什么格式的数据。
一直都感觉正则好高端
1
$s=file_get_contents('http://www.weather.com.cn/weather/101070101.shtml');preg_match('/\s+(.+)\s+<\!--today5-->/s',$s,$m);echo $m[1];
2
preg_match('/\s+\s+(.+?)\s+/s',$s,$m);echo $m[1];
3 不知道你想要得到什么格式的数据。
就是按日期,顺序取到各项值就行,文本就行,比如:星期四 白天晴 高温16摄氏度 西南风微风 夜间晴 低温3摄氏度 西南风微风(换行)...如此把这块数据都取出来
如下源码:
16日星期三 | 白天 | | 晴 | 高温 12℃ | 东北风 | 微风 |
夜间 | | 晴 | 低温 -2℃ | 东北风 | 微风 |
只想要(取得3天数据):16日星期三 白天:晴 12℃ 东北风微风 夜间:晴 -2℃ 东北风微风
另外发现一个小问题(见下图),不知道应该怎样处理一下?
另外发现一个小问题(见下图),不知道应该怎样处理一下?
echo preg_replace('/ \s+/s','',$result[1]);
3
preg_match_all('/
哦,写错了。第一个应该是 echo preg_replace('/ \s+/s','',$result2[1]);
问题3
这两行执行后,还有个小缺陷,有很多不必要的换行存在,能弄掉吗?(查看源代码如下)
今天是2013年10月17日 星期四 农历九月十三 沈阳天气预报 (2013-10-1708:00发布) 17日星期四 白天 晴 高温 16℃ 西南风 微风 夜间 晴 低温 3℃ 西南风 微风
18日星期五 白天 晴 高温 18℃ 西南风 3-4级 夜间 多云 低温 6℃ 西南风 3-4级
19日星期六 白天 阵雨 高温 15℃ 西南风 3-4级 夜间 多云 低温 4℃ 西南风 微风
echo preg_replace('/\s+/s','',join('
',array_map('strip_tags',array_slice($m[1],0,3))));
echo preg_replace('/\s+/s','',join('
',array_map('strip_tags',array_slice($m[1],0,3))));
换行是去掉了,但全边一起了
沈阳天气预报 (2013-10-1711:00发布)17日星期四白天晴高温16℃西南风微风夜间晴低温3℃西南风微风
18日星期五白天晴高温18℃西南风3-4级夜间多云低温6℃西南风3-4级
19日星期六白天阵雨高温15℃西南风3-4级夜间多云低温4℃西南风微风
有办法让换行变成一个空格吗(现有的
保留)?
要是不好实现就算了,这样也可以了。说什么好呢?太感谢了
echo preg_replace('/\s+/s',' ',join('
',array_map('strip_tags',array_slice($m[1],0,3))));
内容总结
以上是互联网集市为您收集整理的正则采集问题,求解,在线等全部内容,希望文章能够帮你解决正则采集问题,求解,在线等所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。