嗨我有字符串llike,
“09年1月15日,因子为0.8”
我想以下面的方式分离这个字符串,
1]日期为01-15-09 2]因子为0.8
注意:字符串长度不固定。
那么我们怎么能以#1& amp;的形式分离数据呢? #2?
答案 0 :(得分:3)
要获取日期,您可以使用PATINDEX()
。
declare @yourString varchar(100)
set @yourString = 'on 01-15-09 with a factor of 0.8'
select substring(@yourString,
patindex('%[0-9][0-9]-[0-9][0-9]-[0-9][0-9]%', @yourString),
8)
要获得“xx因子”,您可以这样做:
select substring(@yourString,
patindex('%with a%', @yourString) + 7,
20)
答案 1 :(得分:1)
declare @txt varchar(max)
set @txt = 'on 01-15-09 witha factor of 0.8'
select cast(substring(@txt, patindex('% [0-9][1-9]-%', @txt), 9) as date) [date],
cast(right(@txt, patindex('%_ %', reverse(@txt))) as decimal(9,1)) Factor
结果:
date Factor
---------- ------
2009-01-15 0.8