--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