首页 > 编程知识 正文

python正则表达式语法,python判断

时间:2023-05-04 00:52:06 阅读:51298 作者:339

正则表达式:

创建与Email匹配的正则表达式

2 .用这个正则表达式匹配用户的输入,判断是否正当。

正则表达式也用字符串表示,所以首先要了解如何用字符描述字符。

在正则表达式中,如果直接给定字符,则它们会精确匹配。 d可以匹配数字,w可以匹配字符和数字,如下所示:

“00d”可以与“007”匹配,但不能与“00A”匹配;

'ddd '是' 010 ';

'wwd '是' py3 ';

.因为可以匹配任意文字:

' py.'是' pyc '、' pyo '、' py!' 一致的等待。

要匹配增长的字符,正则表达式必须用*表示任何字符(包括0个字符),至少用表示一个字符, 表示0个字符或1个字符,{n}表示n个字符,{n,m}表示n-m个字符:

让我们来看一个复杂的例子。 d {3}sd { 3,8 }。

从左到右解读一下:

d表示与{3}个数字一致。 例如,' 010 ';

s可以匹配一个空格(包括制表符等空格),因此) s表示至少有一个空格。 例如,匹配“”、“”等。

d { 3,8 }表示3-8个数字,例如' 1234567 '。

总的来说,上面的正则表达式匹配由任意空格分隔的带区号的电话号码。

如果符合' 010-12345 '这样的号码呢? '-'是特殊字符,因此在正则表达式中用''转义。 因此,上面的正则表达式是 d {3}-d { 3,8 }。

但仍然与' 010 - 12345 '不匹配。 因为有空间。 所以需要更复杂的匹配方法。

要更准确地匹配,可以用[]表示范围,如下所示:

[0-9a-zA-Z_]可以与数字、字符或下划线匹配;

[0-9a-zA-Z_]可以与至少一个数字、字符或下划线组成的字符串(如“a100”、“0_Z”或“Py3000”)匹配。

[a-zA-Z_][0-9a-zA-Z_]*可以以字符或下划线开头,并与由数字、字符或下划线组成的任何字符串匹配。 也就是说,这是Python的有效变量。

[ a-za-z_ ] [0- 9a-za-z_ ] { 0,19 }更准确地限制了变量的长度为1-20个字符(前面一个字符之后最多19个字符)。

因为A|B与a或b匹配,所以(P|p ) ython与' Python '或' Python '匹配。

^表示行的开头,^d表示必须以数字开头。

$表示行的结尾,d$表示必须以数字结尾。

您可能注意到,py也可以与“python”匹配,但如果加上^py$,则匹配整个行,仅匹配“py”

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。