使用变量名称(Regex)提取变量值

时间:2017-04-11 17:23:36

标签: python regex beautifulsoup

我有一个包含多个变量定义的标记,例如:

'var name1="value1";var name2="value2";var name3="value3";'

我使用BeautifulSoup提取它并以字符串形式返回:

fillna

如果我知道变量名称,如何获取变量值?

1 个答案:

答案 0 :(得分:1)

使用正则表达式:

parameter = # Requested parameter value
parsed_code = # JS snippet

regex_string = 'var {parameter}="(.*?)"'.format(parameter=parameter)
re.findall(regex_string, parsed_code)

没有正则表达式,因为这不是一个很好的用例:

parameter = # Requested parameter value
parsed_code = # JS snippet

identifying_string = '{parameter}="'.format(parameter=parameter)
value = parsed_code.split(identifying_string)[1].split('"')[0]

两者都相当不安全,您应该考虑采用不同的方式来做您正在做的事情。