import re pattern = r'https://www' st = input() print(re.match(pattern,st,flags = re.I).span()) span() 是 re.Match 对象的一个方法,用于返回匹配项的起始位置和结束位置。它返回一个包含两个整数的元组,表示匹配项在源字符串中的位置范围。 re.match函数尝试从字符串的开头开始匹配一个模式,如果匹配成功,返回一个匹配成功的对象,否则返回None。 re.match(pattern, string, flags = 0) pattern:匹配的正则表达式 string:要匹配的字符串 flags:标志位,用于控制正则表达式的匹配方式。如是否区分大小写、是否多行匹配等。 以下是一些常用的 flags 参数常量: re.IGNORECASE 或 re.I:忽略大小写,进行不区分大小写的匹配。 re.MULTILINE 或 re.M:多行模式,允许 ^ 和 $ 匹配每行的开头和结尾,而不仅仅是整个字符串的开头和结尾。 re.DOTALL 或 re.S:点字符(.)匹配所有字符,包括换行符。 re.VERBOSE 或 re.X:启用详细模式,忽略正则表达式中的空白和注释,使其更易读。 正则表达式常见的几种函数: 1. re.match()函数 如果想要从源字符串的起始位置匹配一个模式 2. re.search()函数 会扫描整个字符串并进行对应的匹配。 该函数与re.match()函数最大的不同是,re.match()函数从源字符串的开头进行匹配,而re.search()函数会在全文中进行检索匹配。 3. re.compile() 在以上两个函数中,即便源字符串中有多个结果符合模式,也只会匹配一个结果,那么我们如何将符合模式的内容全部都匹配出来呢? string = "hellomypythonhispythonourpythonend" pattern = re.compile(".python.")#预编译 result = pattern.findall(string)#找出符合模式的所有结果 4. re.sub(pattern,rep,string,max) 如果,想根据正则表达式来实现替换某些字符串的功能,我们可以使用re.sub()函数来实现。