32 lines
2.0 KiB
Plaintext
32 lines
2.0 KiB
Plaintext
--This function returns the "value" of a RegionsOfInterest string,
|
|
--given a keyword and a string to search. For example,
|
|
--'{"Suffix":"_ROI Period 1","Start":-1,"End":1,"IsEnabled":true,"IsDefault":true,"ChannelNames":["an1","an2","an3"]}'
|
|
--and 'Start' returns -1
|
|
CREATE FUNCTION [dbo].[foo_ROIStringToValueString]
|
|
(
|
|
@RemainingSubString nvarchar(Max)
|
|
,@KeyWord nvarchar(255)
|
|
,@ValueTerminator char
|
|
)
|
|
RETURNS nvarchar(MAX)
|
|
AS
|
|
BEGIN
|
|
DECLARE @KeywordStartIndex INT
|
|
DECLARE @ValueLen INT
|
|
DECLARE @ValueString nvarchar(MAX)
|
|
|
|
SET @KeywordStartIndex = CHARINDEX(@KeyWord, @RemainingSubString) + LEN(@KeyWord)
|
|
SET @RemainingSubString = SUBSTRING(@RemainingSubString, @KeywordStartIndex, CHARINDEX('}', @RemainingSubString) + 0)
|
|
SET @ValueLen = CHARINDEX(@ValueTerminator, @RemainingSubString) - 1
|
|
IF (@ValueLen = 0)
|
|
BEGIN
|
|
SET @ValueString = ''
|
|
END
|
|
ELSE
|
|
BEGIN
|
|
SET @ValueString = SUBSTRING(@RemainingSubString, 1, @ValueLen)
|
|
END
|
|
|
|
RETURN @ValueString
|
|
END
|