传入文件的正则表达式语句

Regular Expressions statement for incoming file

我对 Python 和正则表达式都很陌生,但我不得不在实习中使用它们。我正在读取一个文件并使用正则表达式从文件中挑选出重要的内容。

尤其是我在使用一行时遇到了问题。在文件中它看起来像这样:

  TOWNHOME_PTS_COST                price_per_household_lin_this_x

我想在该行中包含第二个字符串,但是字母和下划线的混合使我很难对其进行编码。我试过 运行 以下方法,但似乎没有用。另外,我一直在使用 .group(1) 函数从其他文件中提取内容,但是对于这一行它似乎不起作用,它只是 return 一个空白;我很确定这两个问题是相关的。

import re

myString ="          TOWNHOME_PTS_COST         price_per_household_lin_this_x"
mapName = re.match(r"[\s]*TOWNHOME_PTS_COST[\s]*([a-z]||_)*", myString)
if(mapName):
    print("Found It!")
    print(mapName.group(0))
else:
    print("Not working")

输出:

Found It!
TOWNHOME_PTS_COST                price

我想要整个第二个字符串 price_per_household_lin_this_x,我也尝试在 ([a-z]||_)* 上加倍并在该语句中放置更多 *,但它们都 return 第二个字符串 price 同样的事情。感谢您的帮助!

代码:

import re

myString ="          TOWNHOME_PTS_COST         price_per_household_lin_this_x"
mapName = re.match(r"[\s]*TOWNHOME_PTS_COST[\s]*([a-z_])+", myString)#Notice the ([a-z_])+ 
if(mapName):
    print("Found It!")
    print(mapName.group(0))
else:
    print("Not working")

输出:

Found It!
          TOWNHOME_PTS_COST         price_per_household_lin_this_x