00:00
课我们继续来上课,那么这节课呢,我们再来看一下我们这个基本语法的最后一部分啊,我们模式修正符,那模式修正符呢,首先我们要知道模式修正符是放在哪里的,对吧?那这里边一样,我们新建一个这个文件啊,叫做零七啊模式修正符。好。那这里边咱们一样先定义正的达式对吧,定义一个正则表达式,那同样的我在这里面接收一个数据啊,到了str等于。糟了。下划线。P。OPO里面的ST。T啊,然后呢,在这里边我们去定义一个政则,到了PAPA等于什么呢?等于这个,比如说等于一个大熊吧,啊好了,然后我们开始进行来匹配啊,那我就把匹配的代码直接复制过来了啊,还是一样,我们用这个字串CTRLC。用这段代码诶,看好了进行来匹配对吧,匹配完以后开始进行判断啊,那同样呢,我的这个表单文件要往这个零七页面进行提交啊,那这里边我给它删掉啊,叫零七这里边。
01:04
好。那现在我们来看啊,那么一两,当我们返回到这里边,找到我的零七。我应该零七应该零四过来对吧,咱匹配什么匹配的大熊对不对,那匹配成功,那我想问一下,那比如说在这里边啊,我一旦要给一个这什么呢?给一个。大写的大对吧,这个时候还能成功吗?是不是就不行了对吧?那好了,那第一个I干嘛?他说忽略大小写,看到了吧?那好了,那模式修不放哪,之前我们用小M了,放到哪啊,是不是放到正则定界符以及字符串定界符的中间对吧?那放到这里边,我放个小I也就什么意思,表示不区分大小写对吧?那好了,那现在我们来看啊,再返回来。还是这个大熊对吧,我一点击提交,提交以后你看匹配成么成功成功了吗?哎,也就是说当我设置了什么,当我设置了这个小孩以后,表示什么,表示再去匹配的时候,是不区分大小写来进行匹配的啊,那么另外还有第二个就是什么X忽略正则中的空白,什么意思呢?就是说在我们去编写正则表达式时,如果正则表达是很长,难免这里边我们会多一个空格,对不对?那么一旦多一个空格以后,那好了,现在反过来再来刷新,我来匹配。
02:09
大熊走你能匹配到吗?不行对吧,我这里边给个大写的大走,你这不都不行,为什么?因为这里边有一个空格,我必须要给个空格,这是不是可以对吧?啊或者是纯小写的大空格,行,这是不是才可以对吧?但是大家知道这个空格是我在编写正则表达式的时候多写了这么一个空格吧,所以在这块我可以加一个X,诶加个X表示什么意思啊,表示忽略这个正则表达之中的空白啊,忽略这里面的空白好了,那忽略完以后呢,接下来咱们来看这个时候我重新刷新一下啊,我再来改遍我说哒。兄走,你是不匹配到了,对不对,哎,无论我大小写,因为我这里边是不是还有什么,还有这个小写的也可以对吧,因为我这里边还有一个什么,还有一个I吧,也就是说模式修正符是不是可以批量一起来使用啊,对不对,那它忽略正则中的空白,那我想问的是,当我在这里边,比如说我来个空格,诶空格。
03:02
还是一样,我在这会空格,那还好使了吗?是不是就不行了?哎,这个时候是不是就不行了,因为什么?因为动则中没有空白,那你这里边是不是也就不能加空白,只能是一串内容来匹配了,哎,这就是小X干嘛呢?忽略正则中的这个空白,那么另外还有个什么呢?X它干嘛呢?使得点原子符可以匹配杠N什么意思呢?这个点我知道没学过呀,哎,点实际上也属于也属于原子符,它是干嘛的,可以匹配任意一个原子,除了谁,除了杠N之外,那好,我们来看一下啊。在这里边我们把它注释掉啊来。Dollar。PP等于斜线对吧,我就直接给一个点,是不是匹配任意一个内容啊好,那现在返回来刷新来给个A走你匹没匹配到,匹配到了吧?来给一个井号再来找你是不是也行对吧?来给一个空格匹配是不是也行啊来所以点可以匹配任意内容,但是谁匹配不到,咱们来看这里边来str。等于双引号杠R。
04:01
杠二对吧,回车来。提交过来啊,匹配匹配成功,匹配成功了吧,哎推可以字表服呢。是不是也行对吧,但是谁不行啊,高恩呢。走,你确定?是不是就不行了,匹配失败了,哎,也就相当于这个点,实际上好像一个万能的一样,对不对,但是除了它我们匹配不了,那怎么办呢?我可以在这里面加一个什么,加一个小S,加了这个小S以后可以干嘛,让这个点能匹配到杠N,那现在你再来看,我再来刷新。确定你看是不是换行了,匹配是不是成功了,哎,这就是咱们这个小S的作用,可以干嘛,可以让这个点匹配到杠N这个点可以在这里面干嘛,匹配任意的内容匹配那一种,那你想如果我给个点加点加的话,我匹配中文是不是能匹配到对不对,比如说在这里面啊,我就给一个我。给一个我啊,咱们来看啊,我先不给这个家,就先用点来匹配中文匹配一个什么,匹配一个我对吗?来点击提交。
05:00
哎,不行。这个我说没注释啊,这个再开起来啊,好了,现在我们再来提交来。匹配到了吗?好像什么都没有是吧,刷新一下重来啊,看好了,我走你拿没拿到拿到了,但是它长度是一看到了吧,也就相当于它只什么只拿了一个字节吧,哎,那咱们一个汉字单位三个字节是不是拿出第一个字节了,对不对,那这样的话,我想匹配整个中文,我是不是点加对吧,你至少出现一个,那这个时候它是不是就可以匹配多个了,比如说我点击提交,你看拿不拿到我对吧?来再来一个我爱你走你,你看拿不拿到我爱你。对吧?哎,这就是咱们点的作用可以干嘛呀,可以让这个可以匹配任意的这个内容啊,但是呢,就是杠N匹配不到,那我加上小S以后,杠N是不是就能匹配到了,对不对?哎,这就是咱们的这个原子符的这个点啊好了,那再往下来还有什么呢?还有MM思维多项处理,在该模式下,这两个可以匹配到杠N对吧?那这个我们之前已经用过了,那我就不再用了,那另外S这是个大S看到了吧,他是干嘛呢?加速匹配,那加了多快呢?不知道啊,没有任何人给出这个结论,所以大家再去写正能表达式的时候,你完全在后面可以加上它的大S啊,加上这个修正符大S任何一个都可以啊,任何一个正能表达式,只要你定义了,你就可以在后面加上大S做什么做这个。
06:16
快速匹配对不对,哎,加速匹配啊,那另外还有一个呢,还有一个大优,这是什么重点啊,必须记住的,还有什么呢?叫做改变贪婪模式,那什么叫贪婪模式呢?咱们来看啊,在这里边新建一个呃,PP文件,比如说叫零八贪婪啊,什么叫贪婪呢?比如说这里边SSPR等于等于什么?等于一个Li。结束R内容。孙建奎。然后再来个Li。然后高落风。高落峰。再来个LY。比如说这个edu work,好,那比如说给了这三个啊,那么接下来呢,我们开始干嘛定义正则进行来匹配,对吧,那我是不是可以WP等于斜线。
07:05
诶斜线啊,这里面政策怎么匹配啊,是不是以Li开始已结束的Li结束对吧?这里边这个斜线我给它转移一下,因为它跟我的边界符是不是冲突了,哎,然后在这里边我是不是就可以干嘛,通过点加是不是就匹配所有内容了,对不对,点这面任意字符加是不是就可以准备多个。没错吧,哎,匹配到了以后好了,那接下来咱们来看啊,在这里边我加一个大S,是不是加速匹配呀。对吧,那好了,那现在我们来叫做PG杠。MAT ch,我到了PT扔进来,然后跟谁匹配呢?跟这个str进行来匹配,对吧,那把匹配到的结果返回给我,MAT ch好了,我们来打这个。到了马。B啊啊,这里面应该没有写错啊,他这个正值怎么没给我变色呢,看到了吧。没变啊,没变就没变吧,啊,那好了,那现在我们来看啊,能不能匹配到就知道了。
08:05
刷新找到我的淋巴开栏,这里边好了,匹配匹配到匹配到了吧,但是咱说了怎么叫他来,你看啊,我们在匹配的时候,是不是从他最开始的地方一直匹配到最后啊。对不对,哎,而我要的我们大家都很清楚,我们要什么,我们是只要这一个对不对,那他是什么,他是不是给我拿到了整个这一所有的,哎,所以这个时候这个程序默认它就是贪婪的,那么通过在这里边我可以给它加一个大优啊,加一个大优以后干什么呢?它变成了非贪婪模式,那你再来看,再来刷新。是不是就剩一个了,这是个非贪婪模式了,哎,那好了,那注意大优呢,它不是改变非贪婪模式,它叫改变贪婪模式,什么意思?当前程序是贪婪的,我使用大优是不是变成非贪婪的了?那好了,那我给你做一个非贪婪的程序啊。同样,CTRL。我把这些都拿过来啊,CTRLC。CTR位啊,在这里面我一样,我也可以干嘛呢,非贪婪模式进行匹配,怎么叫分贪婪模式呢,叫做使用。
09:08
第二。兴问啊,典性问连在一起叫做什么叫做非贪婪模式,匹配所有啊匹配所有,那也就是说这里边我可以,我可以不可以点加问呢?来看好了,我再给个问号,是不是点加问呢?哎,那好,那现在我们再来看来刷新看是不是也匹配了一个对吧,那一样点兴问的效果呢,你看点兴奋。中你是不是也是这样的,哎,所以点兴问跟点加问他俩都一样啊,你用哪个都可以啊,那么常用一般都习惯了,反正用这个点星问啊,那点兴问你看我是不是就非贪婪模式匹配所有啊,那现在我的程序默认是不是非贪婪的,那么这个时候当我加上一个大优以后,你再来看我的程序变成什么了。是不是变成贪婪的了,是不是从一开始又匹配到最后了,哎,所以这个大优模式大家记住它叫什么,叫做改变贪婪模式,这个很重要啊,那么改变贪婪模式程序默认是贪婪的对吧?匹配最远的结束为止,那我们可以在这个正值中使用什么点穴位匹配任意字符同时使用,使用什么使用非贪婪模式啊,这就是咱们需要去掌握的模式修正符啊,掌握这些就足够我们使用了啊好了,那这节课我们到这里。
我来说两句