我在下面一行:
/开始测量MSM_Struct.ANYNAME“状态ASC”
,我想从该行中找出“ ANYNAME”。我尝试了以下表达式:
_regex_struct = re.compile(r'/begin MEASUREMENT MSM_Struct.[\w]+')
使用'group(0)'给我下面的输出:
/开始测量MSM_Struct.ANYNAME
如何在输出中获取“ ANYNAME”?
答案 0 :(得分:4)
您需要转义.
(因为您需要匹配文字点,而不是任何字符),用捕获括号包装\w+
(也请舍弃多余的[...]
\w
)并在m.group(1)
中获取值。
_regex_struct = re.compile(r'/begin\s+MEASUREMENT MSM_Struct\.(\w+)')
m = _regex_struct.search(s)
if m:
print(m.group(1))
请注意,我使用\s+
来匹配1个或多个空格而不是常规空格。