2017年11月7号补充:这个课程抽空看了下,然后就是用于实践采集文章发布到网站上,大大提高了效率,之前对正则重要程度不够认识,认为用精易模块中的取文本中间这个命令就可以了,结果发现效果比用正则差了太多。下面是听课时记录的一些知识点:
. 点号可以匹配除了换行符以外的所有字符,\n 代表换行符
* 号表示前面的一个字符匹配零次或多次,用的多,使用范围广
? 号表示前面的一个字符匹配零次或者一次,用的比较窄
+ 号表示前面的一个字符匹配一次或者多次,使用范围中等.*这种组合最常用
[] 表示字符集,在它的内部我们可以写上可能出现的字符或者字符集,匹配的时候就只会从它里面取,[abc]去匹配时,只要出现了a或者b或者c都可以匹配出来
– 连字符表示字符集的连接,如果不连接字符集就表示它本身
[14]表示匹配字符中的数字1或者4
[1-4]表示匹配字符中的数字1、2、3、4
[a-z]表示匹配a-z的所有字母
[a-zA-Z]表示a到z的所有小写字母,也能匹配A到Z的所有大写字母
[a-zA-Z1-9]表示a到z的所有小写字母,也能匹配A到Z的所有大写字母,还能匹配1到9这9个数字| 竖线选择符表示匹配竖线左边或者右边的字符,比如
food|zood 可以匹配foodzood
(f|z)ood 也可以匹配foodzood
(f|z|d)ood 可以匹配foodzooddood大括号有好几种用法,这里给大家列举几种:
{3}里面写一个非负整数比如3,表示前面的字符匹配正好3次。
{5}里面写一个非负整数比如5,再加一个逗号,说明匹配至少5次。
{4,10}里面写两个非负整数中间用逗号分隔比如4和10,表示前面的字符匹配4次到10次,包含4次和10次。
^代表开头
$代表结尾
===========================历史文字分割线=====================
正则表达式在处理文本时,有很大的作用,虽然之前也陆陆续续的学习过正则表达式,但因为自己是业余人员,不怎么用,有时候几个月才需要编写一下代码,所以学了以后就忘记了。
另外,用精易模块的文本取中间之类的命令,很大程度上能够代替使用正则表达式,就不需要自己去构建那么复杂的正则表达式了。
但对于复杂的采集,或许使用正则表达式,还是比用模块的命令更为方便好用,不需要写那么多代码的。
有空还是学习一下正则表达式比较好,这里先列出来教程,有空再补充知识点:
第一课,正则表达式是个什么鬼
第二课,正则表达式必备工具
第三课,最简单的正则:所见即所查
第四课,点点点,点出一片天
第五课,次数定义:星号、问号与加号的使用
第六课,字符集定义:中括号与连字符
第七课,竖线选择符的应用
第八课,大括号的数量匹配
第九课,分行匹配:尖号与美元符号
第十课,杠杠的转义字符
第十一课,特别的转义字符
第十二课,小括号撑起的一片天
第十三课,贪婪匹配与懒惰匹配
第十四课,万能正则匹配公式偷偷告诉你
第十五课,正则基础阶段性总结与展望
第十六课,股票数据采集之项目分析
第十七课,股票数据采集之正则撰写
标签: 正则表达式