fork(1) download
  1. import re
  2. s="""line1
  3. line2
  4. field: [orders.cancelled,orders.delivered,orders.reached
  5. orders.pickup,orders.time]
  6. some line
  7. some line"""
  8. d = {'cancelled':'cancelled_at', 'deliver':'xxx'}
  9. rx = fr"(?<=\.)(?:{'|'.join(d)})\b"
  10. print(rx)
  11. print( re.sub(rx, lambda x: d[x.group()], s) )
Success #stdin #stdout 0.02s 9396KB
stdin
Standard input is empty
stdout
(?<=\.)(?:cancelled|deliver)\b
line1
line2
field: [orders.cancelled_at,orders.delivered,orders.reached
orders.pickup,orders.time]
some line
some line