如何从匹配的表达式中找到特定的单词?

Anu*_*ani 2 python regex grouping

我有以下几行:

/begin MEASUREMENT MSM_Struct.ANYNAME"Status ASC" 
Run Code Online (Sandbox Code Playgroud)

我想ANYNAME从线路中找出来。我尝试了以下表达式:

_regex_struct = re.compile(r'/begin MEASUREMENT MSM_Struct.[\w]+')
Run Code Online (Sandbox Code Playgroud)

使用group(0)给了我这个输出:

/begin MEASUREMENT MSM_Struct.ANYNAME
Run Code Online (Sandbox Code Playgroud)

如何进入ANYNAME输出?

Wik*_*żew 5

你需要转义.(因为你需要匹配一个文字点,而不是任何字符),\w+用捕获括号括起来(也去掉多余的[...]round \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))
Run Code Online (Sandbox Code Playgroud)

请参阅正则表达式演示Python 演示

注意我曾经\s+匹配 1 个或多个空格而不是常规空格。