对电话号码进行判断,对符合是手机号码的挑选出来:
CREATE FUNCTION [dbo].[fn_motiontel_regular]
(
@input VARCHAR(20) -- the input text
)
RETURNS VARCHAR(20) AS
BEGIN
DECLARE @out CHAR(1)
begin
EXEC master.dbo.xp_pcre_match @input, '(13[4-9]|147|15[0-2]|15[7-9]|18[278])\d{8}',@out OUT
end
--print @out
if (@out<>1 or @out is null) begin
EXEC master.dbo.xp_pcre_match @input, '(13[0-2]|15[56]|18[56])\d{8}',@out OUT
end
--print @out
if (@out<>1 or @out is null) begin
EXEC master.dbo.xp_pcre_match @input, '(133|153|18[09])\d{8}',@out OUT
end
if (@out<>1 or @out is null) begin
set @input='1'
end
else begin
set @input=substring(@input,len(@input)-10,11)
end
RETURN @input
END