Here is a general format, you can either use re.sub, re.match based on your requirement. Below is a general pattern for opening a file and doing it
import re
input_file = open("input.h", "r")
output_file = open("output.h.h", "w")
br = 0
ot = 0
for line in input_file:
match_br = re.match(r'\s*#define .*_BR (0x[a-zA-Z_0-9]{8})', line) # should be your regular expression
match_ot = re.match(r'\s*#define (.*)_OT (0x[a-zA-Z_0-9]+)', line) # second regular expression
if match_br:
br = match_br.group(1)
# do something
elif match_ot:
ot = match_ot.group(2)
# do your replacement
else:
output_file.write(line)