悬赏分:50 该问题已到期 浏览:746 次
|
字符串什么样子的呢
sss8989sss ss8989ss8989ss8989 7879aafds789 432432432543534 正则 \d+ select substring(所查询字符串,patindex('%[^0-9][0-9]%',所查询字符串)+1,patindex('%[0-9][^0-9]%',所查询字符串)-patindex('%[^0-9][0-9]%',所查询字符串)) 这个只能查询第一次在字符串出现的数字串,希望可帮到你你 declare @str varchar(100),@tmp varchar(101),@i int set @str= 'sddfd123fddfd56fddf78 ' set @tmp=@str+ 'a ' while patindex( '%[0-9]% ',@tmp)> 0 begin set @i=1 while 1=1 begin if isnumeric(substring(@tmp,patindex( '%[0-9]% ',@tmp)+@i,1))=0 break set @i=@i+1 end print substring(@tmp,patindex( '%[0-9]% ',@tmp),@i) set @tmp=stuff(@tmp,patindex( '%[0-9]% ',@tmp),@i, ' ') end |