清洁手机串号

我有这样的事情清洁手机串号

TAG POS=1 TYPE=INPUT:TEXT FORM=ID:crm_case_add ATTR=ID:CrmCasePhoneNumber EXTRACT=TXT 

所有的电话号码都是这种格式:800-128-1990或(800)128-1981或291 399 5913

我想它明文像8002893884.我该怎么做?

回答:

只需添加下面一行到您的宏:

SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/[-()\\s]/g,'')") 

回答:

对于那些希望在SQL

做我用一个函数来清理的电话号码,这将解决所有的电话号码的问题或清除领域。返回NULL如果为空(为了防止错误)

Print'/*Fix Phone Numbers Call*/' 

Update tblTemp

Set Phone = dbo.fnPhoneFix(tblTemp.Phone)

From tblTemp

要创建函数的恒等式使用下面的代码:

CREATE FUNCTION [dbo].[fnPhoneFix](@PhoneOld VarChar(20)) 

Returns VarChar(10)

AS

Begin

Declare @iCnt Int = 0

Declare @PhoneNew VarChar(15) = ''

IF @PhoneOld IS NULL

RETURN NULL;

While @iCnt <= LEN(@PhoneOld)

Begin

IF Substring(@PhoneOld,@iCnt,1) >= '0' AND Substring(@PhoneOld,@iCnt,1) <= '9'

Begin

SET @PhoneNew = @PhoneNew + Substring(@PhoneOld,@iCnt,1)

End

Set @iCnt = @iCnt + 1

End

If LEN(@PhoneNew) > 10 and Left(@PhoneNew, 1) = '1'

Set @PhoneNew = RIGHT(@PhoneNew,10);

Else

Set @PhoneNew = Left(@PhoneNew,10);

If LEN(@PhoneNew) <> 10

Set @PhoneNew ='';

Return @PhoneNew

End

以上是 清洁手机串号 的全部内容, 来源链接: utcz.com/qa/257596.html

回到顶部