为什么'tz': 'America/New_York'
和'tz':\s+'\w+\/\w+'
对字符串中子字符串的出现次数进行计数?
我要计算子字符串出现次数的字符串是从Json文件中提取的。
[{'c': 'US', 'nk': , 'tz': 'America/New_York', 'gr': 'MA', 'g': 'A6qOVH', 'h': 'wfLQtf', 'l': 'orofrog', 'al': 'en-S,en;q=0.8', 'hh': '1.usa.gov', 'r': 'http://www.facebook.com/l/7AQEFzjSi/1.usa.gov/wfLQtf', 'u': 'http://www.ncbi.nlm.nih.gov/pubmed/22415991', 't': 1331923247, 'hc': 31822918, 'cy': 'Danvers', 'll': [42.576698, -70.954903]}]
import re
d=open("filepath")
str1=d.read()
list1=re.findall(r"('tz':\s+'\w+\/\w+')",str1,re.I|re.M)
w=open("newfilepath","w")
for i in list1:
w.writelines(i)
w.writelines("\n")
答案 0 :(得分:0)
不要使用正则表达式,请使用ast.literal_eval()
来解析Python文字。
import ast
with open("filepath") AS d:
str1 = d.read()
list1 = ast.literal_eval(str1)
with open("newfilepath", "2") AS w:
for i in list1:
w.write("'tz': " + i['tz'] + "\n")