DECLARE @myString NVARCHAR(max) =
'{local.txt_concept_id} != "" FDKJFKJ TRJEHTJH TREKJTJT & {local.txt_ICD_code} != "" & {local.txt_diagnosis_uniq_id} != "" & {local.txt_ICD_desc} != ""& {FIND({local.txt_ICD_code} , "asp", 0)}!=-1& {LEN({local.txt_diagnosis_uniq_id_IN_LENGTH})}'
;
DECLARE @i INT,
@start INT,
@end INT,
@new NVARCHAR(max)
DECLARE @FieldTable TABLE
(
field_name VARCHAR(200)
)
WHILE (Len(@myString) > 0)
BEGIN
SET @new = ''
SELECT @start = Patindex('%{%', @mystring),
@end = Patindex('%}%', @myString)
IF(@end < @start)
BEGIN
SELECT @myString = RIGHT(@myString, Len(@mystring) - 1)
END
ELSE IF (Patindex('%}%', @myString) = 0
OR Patindex('%{%', @myString) = 0)
BEGIN
SET @myString = ''
END
ELSE
BEGIN
SELECT @new = Substring(@mystring, @start, @end - @start + 1)
SELECT @myString = Replace(@mystring, @new, '')
SET @new = Reverse(Replace(@new, '}', ''))
SET @i = Patindex('%{%', @new) - 1
SET @new = Reverse(LEFT(@new, @i))
END
IF(Len(@new) > 1
AND Patindex('%)%', @new) = 0
AND Patindex('%(%', @new) = 0)
INSERT INTO @FieldTable
VALUES (@new)
END
SELECT *
FROM @FieldTable
嗨杉雨安东尼,我很好奇:你已经改变了第四或第五也许时间了公认的答案......这是好的,当然......我只是想知道为什么。 – Shnugo