当前位置: 首页 > news >正文

做网站用什么语言编写泉州做网站哪家好

做网站用什么语言编写,泉州做网站哪家好,北京信息,哈尔滨市建设工程交易中心网站奇葩的正则表达式 1、常规学习过程很痛苦 计算机领域中有一些非常基础、重要以及应用广泛#xff0c;但却又特别容易让人困惑、非常难以理解的主题#xff0c;这包括了字符编码、字节序(即大小端表示)、浮点数实现、日期时间处理以及正则表达式等。 正则表达式目前市面上并…奇葩的正则表达式 1、常规学习过程很痛苦 计算机领域中有一些非常基础、重要以及应用广泛但却又特别容易让人困惑、非常难以理解的主题这包括了字符编码、字节序(即大小端表示)、浮点数实现、日期时间处理以及正则表达式等。 正则表达式目前市面上并不缺乏专业著作比如那本被誉为正则表达式学习圣经的《精通正则表达式》就很值得一读另外该书的译者余晟先生所写的《正则指引》也不错。 如果仅用于入门则《正则表达式必知必会》肯定不能错过还有网上流传极广的《正则表达式30分钟入门教程》也是不错的入门资料。 但是结合我自身痛苦的正则表达式学习经历和运用体会仅有这些是远远不够的。 记得被大家称之为“轮子哥”的大神级程序员vczh在知乎上说过当初被正则表达式虐得一气之下干脆自己写了一个正则引擎源码托管在Github上才算真正彻底搞懂正则表达式(于是被戏称为“一言不合”就造轮子)。 当然不是每个程序员都能像“轮子哥”这样生猛但即便都有这么生猛似乎也没必要都像他一样自己花费大量时间再造一个正则引擎的“轮子”。 那到底应该怎样才能最高性价比(主要是最高时间-成本比)地掌握正则表达式这个神器呢 2、一旦用过了再也回不去的“神器” 正则表达式是典型的那种你没用过的话不觉得对自己有什么影响可是一旦用过了就再也回不去了的“神器”。 当然我这里所说的“用过”不是指简单地会用一些基本功能而是指能够熟练地运用正则表达式的基本功能和高级功能。只要你用得越熟练你就会越惊叹于其高效、强大与神奇。 看到这里我相信某些接触过正则表达式、会使用一些基本功能的童鞋心里或许在犯嘀咕了神器是神器可这玩意儿看起来就像天书一样也太难学、太难懂了要达到熟练运用的程度谈何容易 短短的一个正则表达式或许不到10个字符其中的每个字符都认识但它们连在一起却让人越看越迷惑越想越迷糊…… 其实这正是我学习正则表达式时的真实心情。 是的正则表达式既然被捧上了神器级别的高度自然是有着相当强大的功能而强大的功能就意味着其有非常深厚的内涵也就意味着有很多需要注意的细节。 3、关键在于掌握其独特的“性格”和“脾气” 注意我这里并没有说正则表达式是由于复杂而难以理解这是因为深厚的内涵不等于复杂细节很多不意味着难以理解。 看到这里或许有人有意见了正则表达式还不算复杂还不够难理解 其实我真正想说的是繁复或许是真的杂乱倒未必。因此简单地说正则表达式复杂似乎不够准确而客观。 正如跟一个牛叉而又性格独特的人打交道关键不在于纠结其性格的独特、脾气的古怪而是重在充分了解并理解其独特的性格、古怪的脾气然后在此基础上与Ta进行良好的沟通以便能好好发挥其牛叉之处。 学习并熟练掌握正则表达式的过程也是如此——关键在于先要摸透其“性格”到底独特在哪里其“脾气”又究竟古怪在何方。一旦摸清楚了其“性格”其“脾气”学习起来就事半功倍了。 因此我下面准备从我自己的角度先尝试着来分析一下正则表达式那独特的“性格”与古怪的“脾气”看看究竟为什么正则表达式给那么多人的感觉都是那么难以“亲近”。 正则表达式为什么这么难 1、高度简洁、高度抽象是难学的关键 正则表达式有一个非常明显的特点高度简洁、高度抽象。正则表达式中短短的几个字符或许就代表了一段复杂的处理逻辑和匹配算法。 我们知道程序代码是对现实事务处理逻辑的抽象而正则表达式则是对复杂的字符匹配程序代码的进一步抽象也就是说高度简洁的正则表达式其背后所对应的是字符匹配程序代码而字符匹配程序代码背后对应的是字符匹配处理逻辑。 因此可以这么认为字符匹配处理逻辑抽象为字符匹配程序代码字符匹配程序代码再进一步抽象为高度简洁的正则表达式。 所以说高度简洁的正则表达式也是高度抽象的。 2、其他难学的原因 当然正则表达式之所以难学、难理解除了由于正则表达式具有高度简洁、高度抽象的特点之外大致上应该还有以下几个原因 1学习者不求甚解不了解正则引擎内部的基本原理 作为正则表达式的使用者不需要深入了解正则引擎内部原理的技术实现细节那是正则引擎开发者更应该了解的但若完全不了解其基本工作原理和运行机制也是不足取的。 2有多个多义元字符特别容易使人混淆、迷乱 比如-、、?、^尤其是元字符?既可以作为量词表示其所限定的子表达式为可选(即匹配0次或1次)也可以置于量词之后表示懒惰匹配而且还有很多特殊分组结构中用到它。 比如(?namesub-regex)、(?:sub-regex)、(?sub-regex)、(?sub-regex)、(?!sub-regex)、(?sub-regex)、(?!sub-regex)、(?|sub-regex)、(?modifier-modifier)、(?(condition)|)、(?R)、(?num)、(?#comment)等。 还记得我自己当初刚开始学习的时候一看到正则表达式中的问号?就有一种独自在风中凌乱的感觉。 3转义也是难点 什么情况下需要转义什么情况下不需要转义貌似复杂得令人抓狂。 当然其实是有一定的规律的掌握了这些规律再遇到转义问题就不至于心潮澎湃了。 4学习期望与学习方法不对 不应该期望一次性记住、学会并熟练运用正确的学习姿势应该是先简单入门对一些基本的规则与元字符大致了解一遍有个印象就好在需要时再回过头来看不用刻意去强行记忆。 然后接下来就是在工作中多实践、多运用边学、边深入、边熟练。 5有用于入门的好教程、备忘单也有用于深入的大部头专著但却缺乏好的速查手册 由于需要边学、边深入、边熟练因此平时手头边更需要的不是简单的入门教程、备忘单(Cheat Sheet)也不仅仅是知识点分散于各处的大部头专著(知识点分散导致查找起来不方便用于深入学习原理是不错但不够实用)而是一本速查手册。 速查手册按语法元素将知识点综合在一起进行编排的、在需要回过头来看时能够随时快速翻查。 这样在实践运用中遇到问题就可方便随时快速翻查而这一点恰恰对于正则表达式这种不可能短期内快速掌握并熟练运用的专业工具的学习与使用非常重要。 6没有使用好的学习工具 你知道regex101.com、regexper.com、RegexBuddy等正则表达式的专业网站和专业工具吗 这些堪称学习正则表达式的神器可令学习事半功倍但很多人不知道或知道但很少使用。 什么才是更好的学习姿势 1、从两个不同的角度和维度来看 对于正则表达式的分析和解读目前大多数文章和书籍多集中在正则表达式自身比如对正则表达式的各个元字符、元转义序列以及匹配原理的分析和解读上。 当然这些自然也是很有必要的而且是学习的主要内容是理解正则表达式所必需的。然而很多人在看了大量这类文章和书籍之后仍然觉得正则表达式很难看懂不好理解。 难道就没有更好的学习姿势了吗 其实理解一个事物往往可以有不同的角度和维度。多个角度和多个维度相结合对于事物的理解可以更为深入而且经常还会有“原来如此”这样豁然开朗的畅快感。 下面是我理解一个事物通常所用到的两个不同的角度和维度 一是深入事物本身去理解它内在的原理和机制等底层逻辑 二是跳出事物本身站在一个更高的维度和层面横向地与其他同类事物进行比较纵向地去分析它的发展与演变。 正如苏轼那首著名的哲理诗《题西林壁》所说的“不识庐山真面目只缘身在此山中”。很多时候往往就是这样当你只从该事物本身来看的话就如在云里雾里是远远不够的。 而一旦跳出到该事物之外站在更高的一个维度来看则又正如王安石的《登飞来峰》中所说“不畏浮云遮望眼只缘身在最高层”登高望远则一览无余了。 2、刨根究底正则表达式的根源和本质 对正则表达式而言前者正是目前大多数文章和书籍在做的而后者却很少有文章和书籍能够跳出正则表达式站在更高的维度或层面来分析和解读正则表达式。这里就包括了《精通正则表达式》和《正则指引》两书。 这里需要特别强调一下的是我绝没有贬低上述这两本专著及其作者和/或译者之意而且恰恰相反这两本专著正是本系列文章的重要参考书。尤其无论是作为《精通正则表达式》的译者还是作为《正则指引》的著者余晟先生都得上是专业而又严谨的。 即便是对于前者而言目前大多数文章和书籍也多半是一上来就正则表达式本身来说正则表达式而往往没有去深挖正则表达式背后的根源和本质。 从根源上来讲正则表达式是为了解决一个基本问题——文本的查找问题(也称为匹配问题)从本质上来讲正则表达式也是一门编程语言并且具有典型的编程范式。 当然正则表达式的功能除了查找文本之外还包括提取、验证、替换、切分文本等但这些功能都是在查找文本功能基础上衍生出来的。 然而文本查找问题的解决方案有其历史演变的过程只有理解了该过程以及将正则表达式放在该历史过程的背景上才能更好、更彻底地理解正则表达式。 而站在正则表达式也是一门编程语言的角度如果能够从纵向编程语言发展史和横向编程范式的角度来看正则表达式则会有高屋建瓴、纲举目张之感。 后面的文章我会先从文本查找功能的历史演变过程讲起随后再从编程语言发展史角度来看看正则表达式到底是一门怎样的语言以及具有什么典型的编程范式。 然后在此基础上再来深入学习正则表达式我相信你一定会有跟以往完全不一样的感觉和理解。
http://www.pierceye.com/news/351376/

相关文章:

  • h5网站制作介绍简单的静态 新闻 asp 网站源码
  • 济南seo网站推广公司帮别人做彩票网站吗
  • 郑州市网站建设怎么样wordpress wp editor
  • 台州网站建设 推广公司网络营销课程总结范文
  • 网站 外包 版权杭州做官网的有哪些公司
  • 微信网站html5中山平面设计公司
  • 建站网站教程视频世界网站排名
  • 做小程序的流程seo 整站优化
  • 网站前台代码国内网站主机
  • 网站后台asp源码高明顺德网站建设
  • 网站建设推广软文网络规划设计师考试全程指导(第2版) pdf
  • 备案网站多少钱支持wordpress的空间
  • 哈尔滨网页模板建站wordpress网页设定
  • 哔哩哔哩网站怎么做视频软件进入公众号会不会泄露个人信息
  • 域名过期做的网站怎么办wap网站前景
  • 网站设计公司 宁波少儿编程课
  • 建设信用卡银行积分商城网站网站关键词优化培训
  • 网站建设对电子商务的意义深圳网站设计兴田德润简介
  • 门设计的网站建设北京最大专业网站建设
  • 黄埔建网站公司长沙 网页制作
  • 网站页面海珠网站建设方案
  • 东宁网站制作公司产品彩页设计
  • 郑州大搜索网站为什么要建立网站
  • 广东网站建设公司排名网页设计模板网站免费
  • 佛山网站建设小程序注册营业执照申请
  • 网站建设文案策划鞍山兼职吧
  • 手机投资网站合肥seo优化排名公司
  • 上海网站制作公司的排名药品网站如何建设
  • 模板网站建设包括哪些wordpress怎么加关键词和描述
  • 温岭专业自适应网站建设响应式网站 模版