请教sql server中replace时如果跳过一些标签?
比如5515,1,<t>宝贝,想你了哦,最近一直很难过</t>,<t>快乐点,没有忧愁</t>
在replace时跳过t标签中的内容?
写
declare @v nvarchar(999)='5515,1,<t>宝贝,想你了哦,最近一直很难过</t>,<t>快乐点,没有忧愁</t>';
declare @s int=charindex('<t>',@v);
--declare @r nvarchar(999)=stuff(@v,@s,charindex('</t>',@v)-@s+4,'aaa');
set @v=''''+replace(@v,',',''',''')+''''--用逗号分割传入的参数@v
--set @r=stuff(@r,
print @v
--想得到结果的是:'5515','1','宝贝,想你了哦,最近一直很难过','快乐点,没有忧愁'
我用的js写的正则测试的,test.replace(/<[^>]*>/g,""),应该和你的里面是一样的道理。<[^>]*>替换成空就行
截图如下供参考