Thanks for the explanations, Gang. Interesting use-case, indeed - I think I remember your previous emails now.
Starting from jOOQ 3.16, the schema mapping feature will be retrofitted to work based on the new query object model transformation capabilities. Those will be much more powerful and allow for replacing identifiers based on more complex logic than simple regular expressions, see:
But I agree, for the time being, your approach seems reasonable, knowing there will be some caveats, including that depending on what you do in createCustomizedField(), you won't be getting your customized field from methods like Table.fields(), etc.