Skip to content

Instantly share code, notes, and snippets.

@JaHIY
Last active July 6, 2022 07:47
Show Gist options
  • Save JaHIY/07b92d6b20d3acc164b15671a25aed31 to your computer and use it in GitHub Desktop.
Save JaHIY/07b92d6b20d3acc164b15671a25aed31 to your computer and use it in GitHub Desktop.
format quote in case_data_index.json
import json
import re
from functools import reduce
PATTERNS = [
'^(.*"BRIEF_CASE":")(.*)(","CASE_TYPE":.*)$',
'^(.*"CASE_ADDRESS":")(.*)("},"ADDR_TYPE":.*)$',
'^(.*"case_?[Aa]ddress":")(.*)(","table_?[Ss]ource":.*)$',
'^(.*"caseAddress":")(.*)(","locationJson":.*)$',
'^(.*"CASE_NAME":")(.*)(","CASE_NUMBER":.*)$',
'^(.*"case_address":")(.*)(","location":.*)$',
]
COMPILED_PATTERNS = list(map(re.compile, PATTERNS))
def format_quote(s, r):
search_result = r.search(s)
if search_result is not None:
matched = search_result.group(2).replace('"', '\\"')
s = ''.join([search_result.group(1), matched, search_result.group(3)])
return s
with open('./case_data_index.json', mode='r', encoding='utf-8') as f:
for i, row in enumerate(f):
print(i+1)
row = reduce(format_quote, COMPILED_PATTERNS, row)
json.loads(row)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment