Regex sre_constants.error:字符范围错误

时间:2015-06-12 07:27:20

标签: python regex json

我正在尝试使用此正则表达式从另一个字符串中获取JSON字符串:

YAHOO.Finance.SymbolSuggest.ssCallback\((.*?)\)

它适用于regex101.com,但是当我在我的代码中使用它时:

import re
import json
import requests

def stock_lookup(name):

    url = "http://autoc.finance.yahoo.com/autoc?query={0}&callback=YAHOO.Finance.SymbolSuggest.ssCallback".format(name)

    response = requets.get(url)

    json_data = json.loads(re.match(data,"YAHOO.Finance.SymbolSuggest.ssCallback\((.*?)\)"))


    return json_data

我收到此错误:

  

sre_constants.error:字符范围错误

提前致谢

1 个答案:

答案 0 :(得分:1)

你错放了match方法中的参数,正则表达式首先应该出现。

re.match("YAHOO.Finance.SymbolSuggest.ssCallback\((.*?)\)", data)

re.match documentation

  

re.match(pattern, string, flags=0)

显示错误,因为z-A中很可能有一些data类型的范围。