Although the regsub command is “quick and dirty”, I have a few cautions that only you can answer, since you know the data and your downstream application.
Obviously the NTE and OBX segment layouts are different, but the corresponding field sizes are different in the standard HL7 definitions; so watch for truncations.
Also, by changing one segment type to another, the message may no longer match the variant.
If you are already using an xlate, the safest way would be to build new OBXs from the NTEs. It might not be simple, depending on the inbound segments, you may have to manually manipulate an index variable to get your segments in a specific order in your outbound message.