如何将字符串 [[1,3],[7,10],[25,36],[42,68]] 转为
<s key="0">1,3 </s>
<s key="1">7,10 </s>
<s key="2">25,36 </s>
<s key="3">42,68 </s>
IF OBJECT_ID('tempdb..#temp') IS NOT NULL
DROP TABLE #temp
declare @s varchar(540)
set @s='[[1,3],[7,10],[25,36],[42,68]]'
CREATE TABLE #temp
(
VALUE VARCHAR(20),
seq INT IDENTITY(1,1) NOT NULL
)
SET @s=SUBSTRING(@s,2,LEN(@s)-1)
WHILE CHARINDEX(']',@s) >0
BEGIN
INSERT INTO #temp
( VALUE )
VALUES ( SUBSTRING(@s,2,CHARINDEX(']',@s)-2 ) -- VALUE - varchar(20)
)
SET @s=SUBSTRING(@S,CHARINDEX(']',@s)+2,LEN(@S))
END
SET @s=''
SELECT @s=@s+ ' <s key='''+
CAST(seq-1 AS VARCHAR(10))
+'''>'+ VALUE + ' </s>' FROM #temp
SELECT convert(xml, @S )
谁有更好的解决方法 请写出