String manipulation over 2 tables in database to application
Even if I don't know the actual content, joining tables on client-side is basically a bad idea because you have to load the whole content to the client.

As BCdotWEB mentioned in the comment, the prefered way is to consolidate your data model to avoid such hacks. If that is not possible, your solution with the convert_string should work. If you need a more efficient solution, you could use function-based-indexes or virtual columns with indices, which should significantly increase query performance.

One comment to the posted code: The oracle function as well as the c# method do not check the length of the string before accessing the 6'th element which may result in an index out of range exception.