00:00
正则表示可以定义知定义字符串的定义字符串的匹配模式,定义它干干什么就可以用来,然后呢匹那么可以用来呃这个判断吧,或者判断那么指定的具体字符串,指定的具体字符串是不是符合啊,或者叫是否符合,是否符合然么这种匹配模式啊,匹配这种字符串的这种匹配模式。是否符合字符串的匹配模式。这是我们说他这种语法主要定义这种匹配模式。定义了之后,就可以判断具体具体的这种这个啊,具体的这个指定的一个字说是不是这种模式的啊,这这是我们说的这。那我们对于这种正策表达式这种语法的掌握的话,其实最主要就是它这语法,使用它这语法可以定义各种各样的匹配模式,知道吗?那我现在呢,我问你了,我想让你使用它这语法给我定一个非负整数的正能表,使用这么这么一个匹配模式,你怎么定义,对不会是吧?呃,不会怎么办,在百度。
01:23
那到公司的里边呢,对也百度是吗?其实确实是这样,就是百度,但是到网上找的话,使用自助转,多数情况下同全都是到网上去找找现成的直接用就行了。是吧?这时候我们说多数情况下都是这样啊,为什么是这样,这就是因为正德表达式这种语法它的特点来决定的,牛老师我们就学它不就行了吗?就是它的特点,就是什么对学不明白,学不会的,也学不会的,你说他很难吗?其实也不是难,就为什么,你说为什么他学不会的,就是他太琐碎了,就是难倒是不难,它都是一些死的规则,这个符号代表什么意思,那个符号代表什么意思,全部都是些符号,一个一个符号,你说你学它学的时候难受不难,他没有什么业务逻辑性,但是你就得死记他,你得记着一句话。
02:16
记你很难记他还不如有逻辑性的,我只记一个逻辑就行了,关键他都是死的语法,所以你记没法记,他有好多好多这种死的,这种这个规则都死些死的规则,但是你要是学它,你要记的话,你可能能能学会能记上,但是你记两天可以,你过一段时间呢,你不用又忘了记了,白记知道吗?因为他太琐碎了,知道吗?这时候这时候我们要说到这,那你说老师那这样全部用百度了,全部用百了,那我们这个都是找一些这个都找一些现成的这正当表达师用,那是吗?他记也记不住了,那我们是不是一点都不用管他了。
03:01
其实你那这个这的还学它干什么,它这么难的话,都直接找现成的不就行了吗。啊,那你要说一点儿不,你要如果一点儿都不管,他一点都不学政政老师,政道老师其实也不好,为什么,万一知道吧,万一哪万一哪天这个百度上找你遇到一个政员找不着,或者你是吧,或者你开发的时候上不了外网,你怎么办?啊对,拿手机有的有的做项目手机手机都没信号,那你说有很多那涉密的项目,你比如特别做政府或者银行的那些项目,一般你手机上没信号,在项目组里边那一块区域里边没信号。对对,你问问谁呀,大家都不记啊,嗯,下载对自己保存一份啊,很多情法都是自己保存一份,就说基本上每一个程序员是吧,每一个程序员在电脑上肯定有一个记事本在上面,一定记住着常见的智能表达式,见一个记一个,见一个记一个,知吧,不管通过什么途径,只要是见一个都记一个,以后用的话直接到里边取就行,对。
04:08
然后一会儿我给大家拷贝一份是吗?这一份儿就是大家什么最常用的政能法试,到时候直接找就行了,知道吗?好,这是我们说的这所以这是它的特点是吗?那你说找到万一我也没找到怎么办呢?我遇到一个正策小是我以前也没记过,也上不了网了,那怎么办呢?对,那你还不能不写啊,客户有这种需求也不能不写啊,那怎么办啊,你还得学他的语法,那学他的语法啊,那说咋得学他语法,那就那就别记,别记了吧,他的语法并不是让大家全学是吧,全学谁都学不会,知道吧?啊,为什么全都学,学不会,就是太太琐碎了,还是那句话,正常人都不会,都学不会了,你要把他所有的语法都掌握,谁都谁都掌握不了,知道吧,所以那我们学什么就学一部分语法,学个通式,学个通则,有他这几个语法就记几条就行了,有这几条就能够什么能够写出来,绝大多数的政治老师都能写出来,但是只不过你写的呢。
05:12
你就用这几条语法写,可能你写的时候比较麻烦一点,比别人没别人写的简洁,但是从功能上来讲,你会就这意思,所以我们一般来讲,所以正则表达式这种这种这个语言呢,我们学的时候中么,我们使用的时候基本上就这样,第一个优先什么到网络上去找,没有网络那怎么保存一份啊,保存一份,然后呢,用的时候以这两份为为主,是吧,一个到网络上找,再一个保自己保存一份,如果这两个都解决不了,那动用第三个,第三个什么,自己掌握几个简单的语法规则,这个规则是个通则,所有的政策表示,基本上大多数你都能写出来。都能写出来,但是只不过你写了可能麻烦一点,但是功能能实现,就这意思知道吗。
06:01
啊,所以这是我们说的这儿,所以当然我们说这一套规则呢,是我们给大家总结出来的,大概就记几个规则就行了,知道吧,好,当然就是人家你到网络找的话,大部分他也都用这些语法,知道这是我们这儿,所以说大看这些语法,我们说你说一点不会也不行,一点不会也不行,知道吗?所以这是我们说到这好,下边呢,我们就准备这儿啊,网络咱们就不说,不多说了,到网上一找你就知道了啊,我一会儿给大家拷贝一份,我们给大家什么记好的一一套,当然这个地方有可能不全,当然你课下再通过别的途径,只要遇到正能老师继续往里边补充就行了,每一位同学将来在自己电脑上都要保存这一份,一会儿我给大家考一份,下边我给大家说什么这这个通则,这个通则啊,给大家看啊,这个通则记哪几个规则是吧?啊,当然我不给大家详细的讲,我这是把这几个这几个符号给大家说出来,给大家说出来,那你课下翻以前的笔记,看这这些这个符号都是什么。
07:01
含义怎么去用他们你只需要掌握这几个符号就行了,知道吗?啊,我当然我课堂上不给大家讲了,讲我没有实验,我没这么多实验知吗?啊,如果这些语法都先讲的话,咱们不行,咱们没有这么多语,这个时间知道吗?所以说那我这个地方来一个就是叫什么正则表达语法通律,就叫通,叫通则语法通则,正则表达式的语法通则,只要掌握这几个就行了,啊这几个当然我们说正则表达式,我这个地方讲这个通则主要是基于GS使用正能表达示,GS里边正能表达示,当然我说正道表达示不难,GS里边可以用,它是通用的语法,它在加Y里边,在其他的C语言里边,在PHP等等其他的开发语言里边都可以用正能表达式,我这个地方是基于GS当中使用正道表达式的语法,知道吧,这个这是通则,当然有这几个通则,首先我大家看一下,当然大家有可能你以前已经会了啊,按理说你这你都应该会,我列这几个语法,那你看有哪些啊,第一个第一个。
08:01
它这个语法这个这个符号这两个斜杠啊,这表示什么。对,在GS,在GS里面使用正动表是两个斜杠,表示什么意思?转移,转移是这种招。转义是表示这种斜状,我是这这这这两个斜状表示什么?这两个形号表示在GS中定义一个智能表示在GS中定义一个正则表达式啊啊正则表达式你要用正常表达式,你得定义一个正当式,你定义一个模式,就这个例子,那怎么定义,再接下这边矩证,你比如我们举个例子,定一个变量保存的,其实它就有个变量,变量没你随便写就这么定义了,把你这头表S的语法写在里边。这样就行了。这是在GS时定义一个正得法,当然我们络不止这种方式,还有别的方式,这是最简单的一种方式,大家知道就行了,知道吧,好,这是我们知道,当然它这个语法肯定是里边都是正能表示的一个语法了,知道好,这是我们说这个符号表示在GS中定义一个正能表示知好,还有还有一个语法,还有这个中括号表示什么意思。
09:22
除了里边儿之外的。是。对,这是这里边是什么?这里边可以写一些什么字符集表示什么?表示匹配这个中块里边指定字符集里边的某一个某一位字符,那么表示匹配指定字符集的功能,指定字符及中的一位字符。一位分啊,你比如说大看我们这个地方简单简单举个例子,我就简单简简单这么写的啊,这样也可以这么ABC,它表示什么意思。
10:05
哎,这这这你看这对表示什么,表示我定义这么一个模式,这个模式表示什么,描模式表示它匹配一个字符串,这个字符串是什么样的字符串。只能有一位字符来组成,而且这一位字符只能取AB或者是C,明白这意思吧,知道将来假如你有一个字符,假如你有个字符串,这个字符串如果是个A,一匹配到能匹配成功,如果是个B,也能匹配成功,如果是个C,也能匹配成功,那如果是AB,能匹配成功吗?不行,为什么一个中括号只能匹配一位字符,它是两位了。知道吧,那有我这个D可不可以,不可以,虽然它是一位字符,但是我它不在这里边,大家明白这意思吧,这是我说这这是这啊这是第三个,还有一个第二个这个这一个大家也是常见的哪一个这个一个加小加号,这表示什么?对表示匹配字符串的开头,表示匹配字符串的开头位置,开头位置表示某一个字符串,表示某一个什么字符串只能以谁开头。
11:21
如果你给我一个字符转,如果以这个指定的字符开头,那么就是匹配成功,否则不以它开头就匹配失败,就这意思知道吧?还有一个,还有一个Dollar符号表示什么?对,表示匹配字符串的结尾,结尾表示只能匹配一个字符串,它定位定义一个模式,只能以某一个字符结尾。是结尾的匹配成功,否则匹配失败,就这意思,好,这是这个是匹配一位字符,那我这个地方如果是这样的话,当然如果最好是这么写。然后呢,这个是结尾知只能有这里边的这是什么一个字符,而且只能一就一个字符吗?那什么一一,那这个字符开头和结尾都是这个字符,知道吗?这是我们说到这。
12:14
那这个地方,这个地方大家这个中号有有别的用,有别的写法,怎么写法,你说老师你这个地方是ABC,只能取ABC里边的一位,那我要想取22这个这个26个字母都都怎么都取都取上呢。有26个字母来组成,那这个这个字母你这个这个你应该这个正坐表十,你应该怎么写,对你要是26个,你说太多了,你一个一个列也行,但是太麻烦了,那怎么A到Z。老师我要这么有这个万一也可以是呃,数字的嘛。一杠对对,零到九是对,你一个一个练出来也行,但是就太麻烦,对这是我们说的这啊。
13:03
好,这是我们说这个这一个我们在提到这来,你课下可以翻翻一下笔记,这都什么含义是吧?好这个地方还有看看这是一个,还有一个在GS里边大括号表示什么。大块手表是吧?对大括号表示匹配次数,它表示匹配次数,匹配次数什么意思?当然它主要是结合谁,结合上面这个使用这一个说它只能匹配一位字符,一位字符什么,这是我要是这样匹配的话,只能匹配这个字符,这只能有一个字符来组成,假如说我要想匹配这么一个定义,这么一个模式,说这个字符串可以有ABC来组成,但是这个字符串可以有五位,懂吧。你要如果这样写的话,你要如果这样写的话,那它只能是有一位字符,那我要有五位字母来组成什么?对,匹配五次就行了,这样的话就表示这个字符串有五位来组成,里边字符只能取ABC,同样后边这也一样知道吧,所以这是我们说这所以这个地方我就不给大家详细说了,当然我们说这个地方呢,这个大括有几种变种形式。
14:18
他写了M,它可以填一个值,一个值的时候表示什么?对,表示匹配M次,M次,它可以这么写,假如我想定一个模式,这个模式可以有ABC来组成这个字符串呢?有可能是五位、六位、七位、八位。九位十位都行,那怎么办?它还可以这么写,这个这个对这个大括号表可以写两个值MN,它表示什么意思,表示匹面M次到N次,中间有几位组数都都行。这样写就行了,你要匹配五位到十位,这个写五逗号十就行了,大家明白这意思吧,对,就这样,所以说匹配M次到N次。
15:09
倒N次。四就这还有个,你比如我想定一个字符块,这个字符块至少有五位来组,至至多有多少位不确定,怎么办呢?对M逗号这样写就行,表示脾胃M次。M次,然后呢,或者更多次,更多次知道吗。这都行啊好,这是我们说到的,这是。第五。其实大家看有这四个规则,基本上所有的正能表示都能写出来了,你不管多复杂的正道表示,有这四个规则都行,有这四个规则都可以。
16:04
就是写的时候可能稍微麻烦一点,不管多复杂的都可以了,知道吗?好,这是当然,我们说有的时候太复杂了,写读的时候也不好读,所以它有一些什么,有一些常用的缩写,特殊字符对吧,还有这些对对特殊也特殊符号,特殊符号那有哪些,大家不要什么,首先大家有这个对杠D表示什么。有时匹配什么一位,那么一位数字,一位数字对它就相当于相当于这个对零到九匹配一位数步。你要是写零到九,稍不稍微麻烦,那你就写杠D,那你有时候看网络上人家写的,那真的吧,有可能是杠D,杠小一写D,还有一个杠大写的B表示什么,匹配一位非数字,就只要是语言符号就行。
17:04
但是要除了零到九之外,知道吧,其他所有的字数,你要定位定义一个字符数,不能有数字里边不能出现数字,你就可以用杠大写的D这种,还有一个杠大写的W表示什么,对对表示匹配什么,匹配所有的字符啊字符。所有字符是什么意思?它包括什么字母、数字、下划线。下划线,包括这些字母都行,就我们说这个字母是含广义的字母,并不是说英文字母,各个汉字也也都可以,汉字在中文里边也都叫字母。其他的像日文、阿拉伯文那些文字,每一个文字也都是一个字母,知道吧?对我们说这字母是广义的字母,知道吗?只要有人类的语言符号都行,知道吗?但他不能出现什么,那你说老师这这不是所有的符号了吗?
18:04
它区别于那些什么特殊符号,特殊符号什么意思?对,什么暗的符号啊,星号啊,还有百分号之类,它区别于那些只要有人类的语言符号都行,好,这是我们这还有大写的W表示什么,表示匹配什么匹配非字符什么非字符什么意思,对,就是除了什么这些之外的其他的符号,就是对他的一个什么。差几求一个差几啊,就这意思,除了他们之外的之外的字符啊,这样好,这是我们说的这些,所以将来你定义的时候,你会经常看到这些这些符号还有什么呢哈,还有匹配次数的,你说老师每次都写个大括,我嫌麻烦,那怎么办?它有这么几个简写,哪一个星星表示什么匹配零次。
19:03
是或者多次,多次到底到多少次都可以是吗?或者多次它就相当于相当于什么呢?对,相当于零到多次知道吗?这什么,还有还有一个什么加号,加号匹配一次或者多次,它就相当于啊,相当于这个,哎,相当于这个啊,不是不是这这个大括号啊,大括号相当于相当于谁呢?相当于一次倒多次相当于啊。还有一个问号表示什么,表示匹配零次或者一次,它就相当于什么,对。相当于零到一。
20:05
所以这样写起来,你要能够合合这个合理的用这些特殊符号的话,那你会让你的表正策表示更简洁啊,知道吧,所以大家掌握着要只要掌握着这几个,特别是前四个规则,在GS里边用正道表示基本上都不成问题啊,基本上都不成问题了,知道吧,当然还有一些别的语法,它不止这一语法,这是大家这个通懂就行了。好,这是我们要说的这个关于这个正道表示它这个语法,我们就给它贴到这儿,大家课下翻一翻以前笔记,把这些什么语法的用,特别是我给他指定的这句话理解好,它会写的行了,而且你即使到网络上或者自己保存了一份正能表达是这个这个一些什么一些正能表示,你要能读懂它,能读懂它,利用这语法都能读懂它。这是我们刚才说到这个关于这个正能表达式,我们这个就写到这,下面我给大家看一看,我们给大家总结好的一个正能表达式的一个一个这个正能表达式这么一个这个集合吧,这一个集合你大每一位同学保存一份,每一位同学保存这里边是大家最常用的一些正能表数,当这是匹配数字的啊,这各种各样的数字。
21:17
啊,当然这些肯定还不全,以后你工作过程当中,或者你以后学习过程中,遇到所有的政策表式,你都把他们什么记下来,这是什么,这是校验一些什么,其他的一些表达式,跟字母相关的,这是一些特殊法,什么email域名,什么手机号,固定电话号,身份证号什么之类的这些什么,还有QQ号,IP地址等等这些到时候你用的时候直接在这取就行了,知道这是我们最常用的这种方式啊,你以后还会不断不断的完善懂好这个的么?这事我们给他说到这。
我来说两句