Oracle trim whitespace on the inside of a string

耗尽温柔 提交于 2019-11-27 06:01:01

问题


I am storing phone numbers as VARCHAR2 in my system to allow for users to input '+' characters infront of their phone number if they so choose.

My regexp allows for this perfectly, but when storing the number in the database I want to strip out all whitespace the user may enter.

My regexp allows for the following formats

+4470123456789
+447 0123456789
+447 01234 56789
01234567890
01234 567890
01234 567 890

I know I could resolve my issue by not letting users put any whitespace in their numbers, but I know from personal experience just how frustrating it is to have a validation error due to some silly formatting on the client side. I have tried using the TRIM function on my INSERT/UPDATE trigger but I have realised that is limited to only front and trailing whitespace, is there any other function in Oracle I could use that would remove internal whitespace? Or do I need to write my own function to do this?

Any pointers would be greatly appreciated.


回答1:


You want to try replace (telno, ' ', '').



来源:https://stackoverflow.com/questions/21484677/oracle-trim-whitespace-on-the-inside-of-a-string

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!