zoukankan      html  css  js  c++  java
  • 浅说正则——会了就不会忘


               闲来无事,看了看新浪最近的面试题,其中关于正则的题目,让自己意识到了这一块的薄弱。

               闲来无事,搜集了很多资料(ps:三中全会这几天,用google特慢,不得以用bd,不说了,你懂得,真实屌丝的百科全书,建议能用google就google),研究了一下正则。有一些小感触,正则没有你想象中那么难,正则不是那么简单。

               记得有位贵人告诉我,正则会了就不会忘。当时将信将疑。

               怎么看待正则?难,不难,很容易?对于正则,我想说:会了就不会忘。

               很多同行,包括之前的自己对于正则都是拿来主义,用到的时候,一搜就有。大体上能看懂,深究有不明白。就是那句话恰到好处——最熟悉的陌生人

               关于正则的基础知识,就没必要赘述,到处都是。

                还是想跟大家分享两篇,东西好嘛。PHP正则快速学习正则入门

               这里主要想说的是电子邮箱地址的正则匹配。

               下面的写法最常见:/^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(.[a-zA-Z0-9_-]+)+$/ ;

                还有诸如:/^(w)+(.w+)*@(w)+((.w{2,3}){1,3})$/;

                       /^(w)+(.w+)*@(w)+((.w+)+)$/;

                       (w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*;)*;

             这些都只能满足普通的要求,专门对比了一下几个门户的邮箱地址注册规则,见下图(腾讯的不太友好,输入后才有规则提示,没有拿来):

      


      

      

      

                              差别真的很大,网上的很多也不满足如写的域名规则:

           

                        尝试着写的一个电子邮件验证,希望大家拍砖:$preg = "/^[a-zA-Z0-9]+(.w+)*[^_]@[^-][a-zA-Z0-9-]+[^-].[^-][a-zA-Z0-9-]+[^-]$/ "                   

                        做为一名工程师,要得就是专业,而正则就是专业性的体现。多花一点时间,深入钻研,会了就不会忘。

  • 相关阅读:
    标准输入/输出通道
    不要在纠结负数的表示了
    Coursera公开课-Machine_learing:编程作业7
    Heap堆
    广义表的实现
    二叉树的实现
    模拟实现strstr和strrstr
    栈和队列常考面试题(二)
    栈和队列常考面试题(一)
    vector迭代器失效的几种情况
  • 原文地址:https://www.cnblogs.com/james1207/p/3424255.html
Copyright © 2011-2022 走看看