[英]How to replace all the dots before @ in an email with empty string in Oracle SQL?
我想用oracle查詢中的empty string
替換電子郵件中@
之前的所有dots
喜歡:
anurag.mart@hotmail.com >> anuragmart@hotmail.com
最簡單的方法是使用REGEXP_REPLACE識別模式並將其替換為所需的模式。
regexp_replace('anurag.mart@hotmail.com', '(\w+)\.(\w+)(@+)', '\1\2\3')
例如,
SQL> SELECT 'anurag.mart@hotmail.com' email_id,
2 regexp_replace('anurag.mart@hotmail.com', '(\w+)\.(\w+)(@+)', '\1\2\3') new_email_id
3 FROM dual;
EMAIL_ID NEW_EMAIL_ID
----------------------- ----------------------
anurag.mart@hotmail.com anuragmart@hotmail.com
@
) 1
)和end( @
)位置之間的數據 .
與''
嘗試這個
SELECT Replace(Substr('anurag.mart@hotmail.com', 1,
Instr('anurag.mart@hotmail.com', '@', 1)), '.', '')
|| Substr('anurag.mart@hotmail.com', Instr('anurag.mart@hotmail.com','@')+1)
FROM dual
結果:
anuragmart@hotmail.com
我在尋找 SQL 服務器的解決方案時來到這個頁面,我為我的項目轉換了上面的 SQL 服務器,如果其他人需要它,這里是 SQL。
SELECT
CONCAT(
REPLACE(
SUBSTRING(EmailAddress, 1, CHARINDEX('@', EmailAddress)-1),
'.',
''
),
SUBSTRING(EmailAddress, CHARINDEX('@', EmailAddress), LEN(EmailAddress))
)
FROM [Applicant]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.