📜  Python正则表达式 – re.MatchObject.start() 和 re.MatchObject.end() 函数(1)

📅  最后修改于: 2023-12-03 15:34:30.858000             🧑  作者: Mango

Python正则表达式 – re.MatchObject.start() 和 re.MatchObject.end() 函数

Python的re模块提供了处理正则表达式的函数,其中re.MatchObject.start()和re.MatchObject.end()函数可以用来查找匹配对象的开始和结束位置。

re.MatchObject.start()

re.MatchObject.start()函数返回匹配对象的开始位置。如果没有找到匹配项,则该函数返回None。

示例代码:

import re

text = "The quick brown fox jumps over the lazy dog."
pattern = "fox"

match = re.search(pattern, text)
if match:
    print("Match found at position:", match.start())
else:
    print("No match found.")

输出结果:

Match found at position: 16

在上面的示例中,我们在文本中查找"fox"字符串,并使用re.search()函数获取匹配对象。然后,我们使用match.start()函数获取匹配对象的开始位置。由于"fox"的开始位置是16,所以输出结果为16。

re.MatchObject.end()

re.MatchObject.end()函数返回匹配对象的结束位置。如果没有找到匹配项,则该函数返回None。

示例代码:

import re

text = "The quick brown fox jumps over the lazy dog."
pattern = "fox"

match = re.search(pattern, text)
if match:
    print("Match found at position:", match.end())
else:
    print("No match found.")

输出结果:

Match found at position: 19

在上面的示例中,我们在文本中查找"fox"字符串,并使用re.search()函数获取匹配对象。然后,我们使用match.end()函数获取匹配对象的结束位置。由于"fox"的结束位置是19,所以输出结果为19。

完整示例代码
import re

text = "The quick brown fox jumps over the lazy dog."
pattern = "fox"

match = re.search(pattern, text)
if match:
    print("Match found at position:", match.start())
    print("Match ends at position:", match.end())
else:
    print("No match found.")

输出结果:

Match found at position: 16
Match ends at position: 19

在上面的示例中,我们将re.MatchObject.start()和re.MatchObject.end()函数组合在一起使用,以获取匹配对象的开始和结束位置。输出结果显示"fox"字符串在文本中的起始位置为16,结束位置为19。