今天在写采集程序过程发现有的网址有很多相关推荐,有的没有换行的我直接正则【eg:相关推荐.*】就能把相关推荐在内的文本都替换掉,可是今天的却发现所有的文章都是有回车换行的带连接地址,那么这些我要过滤又该怎么操作呢???具体查阅了很多地址和资料,发现这位博友的文章介绍怎么替换任意字符串包括回车和换行。。
地址:http://maimode.iteye.com/blog/1030482
也就是说如果我要连着相关推荐一起去除,那么正则写法应该如此:相关推荐[\s\S]*?,于是我们使用工具测试如下:
我们看到只有相关阅读被去除了,其他的文本都还在,于是我在想后面俩小尾巴一定需要两个??*本身就是说0个或者多个。。那么也就是说一个*就够用了吧??而且?是匹配前面的元素零次或一次,这样不是和*冲突了??于是我把?去掉在重新测试,发现能工作了,那么具体测试数据如下:
只有一个或者多了几个换行也照样被替换掉了
或者相关阅读后面还没有换行多了任意的字符串也能替换掉
所以总结了一下,如果要替换固定字符串【xxx】后面带有回车换行的任意字符串的正则参数为:xxx[\s\S]*