正则表达式小试牛刀--匹配我的博文标题

作者:vpoet
邮箱:vpoet_sir@163.com
正则匹配,我以我的博客页面的博客标题为例:http://blog.csdn.net/u013018721页面截图如下:
我们再看看页面源代码,找到每个标题的html代码位置:
我们可以看出博客的标题都隐藏在一个span标签中,这个span标签的class都为"link_titile",真正的标题
硬件在<a>标签之间</a>好了,现在我们可以用正则匹配一下.当然你可以用任何一种支持正则表达式语言进
行编程正则匹配。这里我为了方便,用了一个正则测试小工具:
整个工具截图如下:第一部分Regular Expression为正则表达式  test text是你需要进行匹配的文本,test results为匹配结果
现在我们来写正则:<span class="link_title"><a href="/u013018721/article/details/\d+">(.+?)</a>
匹配结果如下:
我们匹配的结果如下,是不是把所有的标题全匹配出来了呢。
当然还有一个问题,有的人会问这里的正则可以这样写吗?
<span class="link_title"><a href="/u013018721/article/details/\d+">(.+)</a>

好我们来试试,匹配结果如下:
咦发现只匹配了一个标题,怎么回事呢?
这里就涉及到贪婪匹配和非贪婪匹配的问题。
简单的说:正则匹配默认是贪婪匹配,加上?进行非贪婪匹配尽可能的不重复匹配上一个字符
so,具体的正则语法我们接下来再详细学习

正则表达式小试牛刀--匹配我的csdn博文标题的更多相关文章

  1. vscode如何配置debug,python正则表达式如何匹配括号,关于python如何导入自定义模块

    关于vscode如何配置debug的问题: 1.下载安装好python,并且配置好 环境变量 2.https://www.cnblogs.com/asce/p/11600904.html 3.严格按照 ...

  2. php中正则表达式的匹配和数据验证总结

    正则表达式能匹配复杂的字符串形式,比字符串处理函数功能更加多,只不过执行效率有所降低,但是可以实现非常复杂的匹配,下面总结一下 1.简单的字符串匹配,判断指定字符串是不是在另一个字符串中,和字符串查找 ...

  3. 在C#中使用正则表达式自动匹配并获取所需要的数据

    转自:http://my.oschina.net/bv10000/blog/111736 正则表达式能根据设置匹配各种数据(比如:e-mail地址,电话号码,身份中号码等等).正则表达式功能强大,使用 ...

  4. python刷取CSDN博文访问量之四

    python刷取CSDN博文访问量之四 作者:vpoet #coding:utf-8 import requests import urllib2 import re import time def ...

  5. python刷取CSDN博文访问量之三

    python刷取CSDN博文访问量之三   作者:vpoet 注:这个系列我只贴代码,代码不注释.有兴趣的自己读读就懂了,纯属娱乐,望管理员抬手若有转载一定不要注明来源 #coding=utf-8 i ...

  6. python刷取CSDN博文访问量之二

    python刷取CSDN博文访问量之二 作者:vpoet 注:这个系列我只贴代码,代码不注释.有兴趣的自己读读就懂了,纯属娱乐,望管理员抬手      若有转载一定不要注明来源 #coding=utf ...

  7. python刷取CSDN博文访问量之一

    python刷取CSDN博文访问量之一 作者:vpoet 注:这个系列我只贴代码,代码不注释.有兴趣的自己读读就懂了,纯属娱乐,望管理员抬手 若有转载一定不要注明来源   #coding=utf-8 ...

  8. CSDN博文大赛火爆开启

    俗话说的好,程序猿会写博,谁也挡不住! 是不是每一个开发人员都能写出好博文,这个非常难说,但能够肯定的是,能写出好博文的,一定是优秀的程序猿! 写作即思考,养成写博文的习惯,既能帮自己整理技术思路,也 ...

  9. 在Python中使用正则表达式同时匹配邮箱和电话并进行简单的分类

    在Python使用正则表达式需要使用re(regular exprssion)模块,使用正则表达式的难点就在于如何写好p=re.compile(r' 正则表达式')的内容. 下面是在Python中使用 ...

随机推荐

  1. Integer to English Words 解答

    Question Convert a non-negative integer to its english words representation. Given input is guarante ...

  2. Hdu3714-Error Curves(三分)

    Josephina is a clever girl and addicted to Machine Learning recently. She pays much attention to a m ...

  3. LeetCode C++ 解题报告

    自己做得LeetCode的题解,使用C++语言. 说明:大多数自己做得,部分参考别人的思路,仅供参考; GitHub地址:https://github.com/amazingyyc/The-Solut ...

  4. OpenWrt openssl library

    Please install the openssl library (with development headers) sudo apt-get install libssl; rite fail ...

  5. c语言所有的errno枚举值含义

    可以通过以下代码,获取所有的错误码信息: #include <string.h> /* for strerror */ #include <errno.h> #include ...

  6. [转载]Linux网络编程IPv4和IPv6的inet_addr、inet_aton、inet_pton等函数小结

    转载:http://blog.csdn.net/ithomer/article/details/6100734 知识背景: 210.25.132.181属于IP地址的ASCII表示法,也就是字符串形式 ...

  7. poj 3180 The Cow Prom(tarjan+缩点 easy)

    Description The N ( <= N <= ,) cows are so excited: it's prom night! They are dressed in their ...

  8. VS 项目(c#)引用了 DLL文件,也写了Using,但是编译时提示:未能找到类型或命名空间名称

    1. 在项目上点右键-->属性-->应用程序-->目标框架-->修改为.NET Framework 4. 而我原来的设置是.NET Framework 4 Client Pro ...

  9. Biorhythms(中国剩余定理)

    Biorhythms Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 127339   Accepted: 40342 Des ...

  10. JConsole 连接配置

    远程监控配置 JDK配置 在%JAVA_HOME%/jre/lib/management目录下,jmxremote.password.template.jmxremote.password需要修改配置 ...