首页 > 解决方案 > 在 Python 中寻找模式

问题描述

我有一个文件。我想创建一个模式。然后,我将计算一些值。我正在使用下面的代码。如何拆分这 3 个值?此外,一些列中有空格,如下图所示。

title=movies[3].split(",")[1]

title

pattern=r"(\d+)[(\d+)-(\d+)]"

import re
re.findall(pattern,title)

在此处输入图像描述

在此处输入图像描述

标签: pythonfunction

解决方案


您忘记转义字符[]. 现在它被视为这些括号之间已定义字符集的定义。

将您的正则表达式更改为:

pattern = r"(\d+)\[(\d+)-(\d+)\]"

要向正则表达式添加可选空格,您可以使用\s*. 所以完整的正则表达式将是

pattern = r"(\d+)\[\s*(\d+)-(\d+)\s*\]"

推荐阅读