特定fileName模式的正则表达式

时间:2017-07-13 15:02:21

标签: regex python-2.7

您好frame02_0046.tiff我曾为{I} ^(.*)(\d+)([^\d]*)$找到了以下正则表达式frame1.03.png但是我有另一种名称frame5.03.png pattern = '^(.*)(\d+)([^\d]*)$' patternExpr = re.compile(pattern) 的模式  如何在正则表达式中我可以包含名称模式

sed

1 个答案:

答案 0 :(得分:0)

正如在评论中发布的那样,你的正则表达式是"糟糕"为了你的目的。

您可以改用此正则表达式:

^([a-z]*?)(\d+)[_.](\d+)\.[a-z]+

<强> Working demo

请注意我在上面的链接中使用的标志。

匹配信息

Match 1
Full match  0-17    `frame02_0046.tiff`
Group 1.    0-5 `frame`
Group 2.    5-7 `02`
Group 3.    8-12    `0046`
Match 2
Full match  18-31   `frame1.03.png`
Group 1.    18-23   `frame`
Group 2.    23-24   `1`
Group 3.    25-27   `03`
Match 3
Full match  32-45   `frame5.03.png`
Group 1.    32-37   `frame`
Group 2.    37-38   `5`
Group 3.    39-41   `03`