首页 > 解决方案 > 为什么正则表达式匹配不是我所期望的?

问题描述

我尝试实现以下代码,但打印出来的不是我所期望的

import re

def regex_search(txt):
    lst = re.findall(r'(\d{1,3}\.){3}', txt)
    return lst

print(regex_search("123.45.67.89"))

当我期望 ['123.', '45.', '67.'] 时,它会打印出 ['67.']。我哪里错了?请帮忙。

提前致谢。

标签: regexpython-3.x

解决方案


这里甚至不需要使用正则表达式:

input = "123.45.67.89"
parts = input.split(".")
parts = [s + "." for s in parts]
parts = parts[:-1]
print(parts)

['123.', '45.', '67.']

推荐阅读