从“5 Rnd (5-5-5-5-5)”中提取“5 rnd”的正则表达式

regular expression to extract "5 rnd" from "5 Rnd (5-5-5-5-5)"

简单来说,从“5 Rnd (5-5-5-5-5)”中,我需要提取“5 Rnd”部分,其中数字可以是任意数字,而“Rnd " 有时写成 "rnd",有时写成 "RND",有时只是 "Rnd"

根据 5 Rnd 字符串出现的位置,您可以像这样捕获任何事件:

re.search(r"\d+ rnd", "5 Rnd (5-5-5-5-5)", re.IGNORECASE)

或者你可以在括号前的开头抓取

re.search(r"^(\d+ rnd) \(", "5 Rnd (5-5-5-5-5)", re.IGNORECASE).group(1)

尝试:

txt - 输入文字

import re
re.findall("\d+\s*rnd", txt, re.I)

\d+1位或更多位

\s* 0 个或更多空格

rnd 个字母“rnd”

re.I 不区分大小写的搜索