前4篇利用Java自己自带的URLConnection实现一些基本的抓取页面的功能,可是对于一些比较高级的功能,好比重定向的处理,HTML标记的去除,仅仅使用URLConnection仍是不够的。正则表达式
或许HttpClient抓取页面和Jsoup语义分析相结合是比较合适的方法?编程
【存疑】接着怎么用呢?不知道哇编程语言
http://blog.csdn.net/pleasecallmewhy/article/details/8929576工具
1.1.概念介绍spa
正则表达式是用于处理字符串的强大工具,它并非Python的一部分。.net
其余编程语言中也有正则表达式的概念,区别只在于不一样的编程语言实现支持的语法数量不一样。blog
它拥有本身独特的语法以及一个独立的处理引擎,在提供了正则表达式的语言里,正则表达式的语法都是同样的。字符串
下图展现了使用正则表达式进行匹配的流程:get
正则表达式的大体匹配过程是:io
1.依次拿出表达式和文本中的字符比较,
2.若是每个字符都能匹配,则匹配成功;一旦有匹配不成功的字符则匹配失败。
3.若是表达式中有量词或边界,这个过程会稍微有一些不一样。
下图列出了Python支持的正则表达式元字符和语法:
正则表达式一般用于在文本中查找匹配的字符串。
贪婪模式,老是尝试匹配尽量多的字符;
非贪婪模式则相反,老是尝试匹配尽量少的字符。
Python里数量词默认是贪婪的。
例如:正则表达式"ab*"若是用于查找"abbbc",将找到"abbb"。
而若是使用非贪婪的数量词"ab*?",将找到"a"。