发表于: 2017-10-22 20:53:21

3 640


今天完成的事情:

今天什么别的没干,就准备小课堂了,把简书的总结贴一下

一、背景介绍

        发明BSD、TCP/IP、csh、vi和NFS的SUN首席科学家Bill Joy说过,在计算机体系结构领域里,缓存是唯一称得上伟大的思想的。其他的一切发明和技术不过是在不同场景下应用这一思想而已。在计算机软件领域里,情形也大体相似。如果罗列这个领域的伟大发明,绝对不超过二十项。这些包括分组交换网络、WEB、lisp、哈希算法、UNIX、编译技术、关系模型、面向对象、XML这些大名鼎鼎的家伙,而正则表达式绝对不应该被漏掉。

        如今正则表达式已经成为几乎所有语言中的必备元素:JAVA、Perl、Python、PHP、Ruby————我们要问的不是什么语言支持正则表达式,而是什么语言不支持正则表达式。而一些功能强大的编辑器如notepad++、sublime 、Atom也全都支持正则表达式。正则表达式究竟能干什么呢?为什么会有那么大的魅力?我们往下看


二、知识剖析

元字符:起匹配、标记作用的特殊字符

匹配:将符合的结果返回,相当于return ...

标记:将符合的结果作为条件,相遇if(...)

"\b"    标记的单词的开头和结尾,即是空格、逗号、句号等符号

"\d"    匹配的是[0-9]的任一个数字

"{}"     "X{3}"表示匹配连续的3个X

“.”    匹配的是除了换行符“\n”的任意一个字符

"*"     "X*"可以表示0个或无数个X

“\s”    表示匹配一个空格

"\S"     表示匹配一个不是空格的任意字符


零宽断言(标记类型,不返回结果)

(?=check)     “X(?=check)”如果X后面跟着check,则匹配X()

(?<=check)     "(?<=check)X"如果X前面有check,则匹配X

注:check可以是任何你写的出的东西


三、常见问题

1.读不懂,也不想读正则表达式怎么办?

2.正则表达式的标准并不统一,JAVA上能用的Python并不一定能用,怎么办?


四、解决方案

1.读不懂,也不想读正则表达式怎么办?

普通人有三件东西看不懂:医生的处方,道士的鬼符,程序员的正则表达式

哪怕是一个精通正则表达式的人要读懂一大段正则表达式也很费力,因为正则表达式是只写的(write-only)。很多时候,写完三分钟,立马就不读懂了

但是——非要读不可的话,可以使用可视化工具

https://www.debuggex.com/

刚才演示用的神器————RegexBuddy


2.正则表达式的标准并不统一,JAVA上能用的Python并不一定能用,怎么办?

神器regexBuddy再次出场!具有不同语言间的正则表达式互相转换功能,甚至还能帮你直接把实现正则表达式的代码写出来!

七、参考文献

1.博客http://www.cnblogs.com/deerchao/archive/2006/08/24/zhengzhe30fengzhongjiaocheng.html

2.《精通正则表达式》


明天计划的事情:

终于可以做任务啦!明天测试七牛云、金山云的上传,能干完的话就开始测试文件迁移



遇到的问题:

准备小课堂,没遇到什么问题



收获:

今天在6点试着讲了一遍,然后7点再正式开始小课堂

虽然讲的不是很好,但总感觉有进步了,以后要干这种当众讲话的事情可以先讲一遍两遍,来发现自己有哪些不足,底气也足些


进度:

任务7开始时间:2017.10.18

预计demo时间:2017.10.26

延期风险:有

理由:准备小课堂花的时间多了一些,不知道迁移服务器和编写上传代码有没有什么困难

禅道

http://task.ptteng.com/zentao/project-task-350.html





返回列表 返回列表
评论

    分享到