Python中的正则表达式重复案例是什么

Python中的正则表达式重复案例是什么

我们可以使用几个特殊字符构建可以识别重复字符组的正则表达式。以下元字符可用于搜索一个字符或一组重复字符。

问号是第一个重复运算符或定量器。通过将其定义为可选项,它有效地指示引擎尝试将前一个令牌匹配0次或1次。

星号或乘号指示引擎尝试将前一个令牌匹配零次或多次。加号指示引擎尝试多次匹配前一个令牌。<[A-Za-z] [无属性的HTML标签通过[A-Za-z0-9]*> 来匹配。尖括号是文字表达。第一个字符类对应一个字母。第二个字符类匹配字母或数字。星号重复第二个字符类。如果第二个字符类匹配为空,也是可以接受的,因为我们使用了星号。因此,像这样的标签将匹配我们的正则表达式。

在匹配时,第一个字符类将匹配H。第二个字符类将重复三次,每次都与T,M和L匹配,这是由于星号的作用。我也可以使用[A-Za-z0-9]+。但我选择不这样做,因为这个正则表达式将匹配无效的HTML元素1>。然而,如果你确定所查找的文本不包含这样的错误标签,这个正则表达式可能是足够的。

限制重复

您还可以使用额外的定量器指示令牌重复的次数。语法是min,max,其中min表示匹配的最小次数(零或正整数),max表示匹配的最大次数(大于等于min的整数)。如果逗号存在但没有max,则最大匹配次数是无限的。因此,值0和1分别等同于?, *和+。如果省略了逗号和max,则指示引擎精确重复令牌min次。

要匹配1000到9999之间的数字,请使用表达式b[1-9][0-9]3b。范围在100到99999之间的数字可以匹配值2, 4b。请注意使用的术语限制。

重复中使用的元字符

字符 含义 示例
? 表示前一个字符出现零次或一次。需要注意的是零次出现的情况,如果不小心会出错。 pythonl?y 匹配: pythony pythonly
* 表示前一个字符出现零次或多次。 pythonl*y 匹配: 上面两者以及 pythonlly, pythonllly,等等
\+ 表示前一个字符出现一次或多次。 pythonl+y 匹配: pythonly, pythonlly, pythonllly,等等
{n,m} 表示前一个字符出现n到m次。 fo{1,2} 匹配: fo 或 foo

这些重复字符都可以用来描述一组字符。因此

>>> import re # Python的正则表达式模块-在所有示例中都是隐式导入

>>> re.match('(.an){1,2}s', 'cans')

<re.MatchObject实例在862760处>

相同的模式也可以匹配’cancans’或’pans’或’canpans’,但不能匹配’bananas’。

示例

以下代码回答了上面的问题

#importing re
import re
#storing a string
s = "sheeeeeeeeple"
print("Give String -",s)
#searching for the repetitive words
match = re.search(r"he+", s)
#printing the matched groups of letters together
print ("Latest String-",match.group())

输出

Give String - sheeeeeeeeple
Latest String- heeeeeeee

代码解释

首先,我们从regex模块中导入re。然后,我们将字符串sheeeeeeeeple存储在变量s中。通过使用search方法,在字符串s中搜索“e”的重复,并将其存储在变量match中。然后,通过使用group方法,我们打印匹配的单词。

示例2

以下代码回答了上面的问题。

#importing re
import re
#storing a string
s = "tutoriallllllllsPoint"
print('Give String-',s)
#searching for the repetitive words
match = re.search(r"al+", s)
#printing the matched groups of letters together
print ("Lates string -",match.group())

输出

Give String- tutoriallllllllsPoint
Lates string - allllllll

代码解释

首先,我们从regex模块中导入re。然后我们将字符串sheeeeeeeeple存储在变量s中。使用search方法在字符串s中搜索“l”的重复,并将其存储在变量match中。然后通过使用group方法,我们打印匹配的单词。

结论

重复的表达式被称为重复。在’*‘后面可以使用任意次数(包括0)来重复一个表达式。使用’+’来重复一个表达式时,必须至少重复一次。使用’?’后面的表达式可以重复0次或1次。当需要明确指定重复的最小次数和最大次数时,可以使用边界运算符{}。例如,a{2}表示字母’a’重复两次,a{2,4}表示字母’a’重复2到4次,a{2,}表示字母’a’至少重复两次且没有上限。注意,{}内部不能有空格,并且下界和上界的值没有上限。所有的重复表达式都指的是先前子表达式的最短可能匹配:单个字符、字符集合或通过()分组的子表达式。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程