Python中正则表达式的奇妙行使 !包你必把握正则!
副问题[/!--empirenews.page--]
媒介 正则表达式就是从字符串中发明纪律,并通过“抽象”的标记表达出来。打个例如,对付2,5,10,17,26,37这样的数字序列,怎样计较第7个值,必定要先找该序列的纪律,然后用n2+1这个表达式来描写其纪律,进而获得第7个值为50。对付必要匹配的字符串来说,同样把发明纪律作为第一步,本文首要行使正则表达式完成字符串的查询匹配、替代匹配和支解匹配。 常用的正则标记 在进入字符串的匹配之前,先来相识一下都有哪些常用的正则标记,见下表所示: 假如读者可以或许较量纯熟地把握上表中的内容,信托在字符串处理赏罚进程中将会游刃有余。如前文所说,本节将基于正则表达式完成字符串的查询、替代和支解操纵,这些操纵都必要导入re模块,并行使如下先容的几个函数。 字符串的匹配查询 re模块中的findall函数可以对指定的字符串举办遍历匹配,获取字符串中全部匹配的子串,并返回一个列表功效。该函数的参数寄义如下: findall(pattern, string, flags=0) pattern:指定必要匹配的正则表达式。 string:指定待处理赏罚的字符串。 flags:指定匹配模式,常用的值可所以re.I、re.M、re.S和re.X。re.I的模式是让正则表达式对巨细写不敏感;re.M的模式是让正则表达式可以多行匹配;re.S的模式指明正则标记.可以匹配恣意字符,包罗换行符 ;re.X模式应承正则表达式可以写得越发具体,如多行暗示、忽略空缺字符、插手注实寥。 字符串的匹配替代 re模块中的sub函数的成果是替代,相同于字符串的replace要领,该函数按照正则表达式把满意匹配的内容替代为repl。该函数的参数寄义如下: sub(pattern, repl, string, count=0, flags=0) pattern:同findall函数中的pattern。 repl:指定替代成的新值。 string:同findall函数中的string。 count:用于指定最多替代的次数,默以为所有替代。 flags:同findall函数中的flags。 字符串的匹配支解 re模块中的split函数是将字符串凭证指定的正则表达式脱离开,相同于字符串的split要领。该函数的详细参数寄义如下: split(pattern, string, maxsplit=0, flags=0) pattern:同findall函数中的pattern。 maxsplit:用于指定最大支解次数,默以为所有门割。 string:同findall函数中的string。 flags:同findall函数中的flags。 拭魅战案例 假如上面的函数和参数寄义都已经把握了,还必要进一步通过案例增强领略,接下来举例声名上面的三个函数:
(编辑:河北网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |