急-替换列内容 有一列存的是html代码,这些html代码中有图片标识 <img src="" />,我怎么把这些标识都找出来并替换成''?也就是我想把页面中的图片去掉.开始标识是<img结束标识是/> 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 declare @sql varchar(8000)set @sql='<html>测试<img src="图片1" />字符串<img src="图片2" />替换<img src="图片1" /></html>'while charindex('<img src="',@sql)<>0begin set @sql=replace(@sql,substring(@sql,charindex('<img src="',@sql),charindex('/>',@sql,charindex('<img src="',@sql))-charindex('<img src="',@sql)+2),'')endselect @sql/*<html>测试字符串替换</html>*/ 仅供参考:DECLARE @str VARCHAR(2000)='<html><img src="" /></html>'SELECT SUBSTRING(@str,0,CHARINDEX('<img',@str))+RIGHT(@str,LEN(@str)-CHARINDEX('/>',@str)-1)--------------------(无列名)<html></html> 楼主看看是不是能行……declare @va varchar(max)set @va='dsfdsfdsf<img src="dsfsdfsadfasfafdasffdsd<imagdsfdsf" />ds/>fdsfdsdsfdsfdsf<img src="dsfsfffdfsadfasfafdasfdsfdsf" />ds/>fdsfds';while(CHARINDEX('<img src="',@va,1)>1) --循环处理字符串beginset @va=replace(@va, ---将位置 A与 B之间的字符替换成'' SUBSTRING(@va, --获取位置 A与 B之间的字符 CHARINDEX('<img src="',@va,1),--获取<img src="的位置 A --以下的获取'/>'在<img src=" 之后第一次出现'/>'的位置,+2 是为了补齐'/>'这两字符的位置 B CHARINDEX('/>',@va,CHARINDEX('<img src="',@va,1))-CHARINDEX('<img src="',@va,1)+2) ,'')endselect @va 楼主不好意思 上面注释不对,应该是以下declare @va varchar(max)set @va='dsfdsfdsf<img src="dsfsdfsadfasfafdasffdsd<imagdsfdsf" />ds/>fdsfdsdsfdsfdsf<img src="dsfsfffdfsadfasfafdasfdsfdsf" />ds/>fdsfds';while(CHARINDEX('<img src="',@va,1)>1) --循环处理字符串beginset @va=replace(@va, ---将位置A之后B个的字符的字符串替换成'' SUBSTRING(@va, --获取位置 A之后B个的字符的字符串 CHARINDEX('<img src="',@va,1),--获取<img src="的位置 A --以下的获取'/>'在<img src=" 之后第一次出现'/>'的位置,然后取得这两个位置之间的字符长度,+2 是为了补齐'/>'这两字符的位置 CHARINDEX('/>',@va,CHARINDEX('<img src="',@va,1))-CHARINDEX('<img src="',@va,1)+2) ,'')endselect @va 请教大家有关SQL中的exec 菜鸟求救!~~~~ 怎么办?? 请问 我想查询出一个标的列名、列描述 该怎么做呢 请教什么地方可以下载到sql server 2000 英文 企业版? !!!!!机器该名之后,如何在企业管理器里重新修改注册你的服务器呢?? 高分求题,刚才分少没人肯答,现加到100请高人指点 怎样从一个子查询中选择一列中的最大值? 请问Sybase高手,怎么添加自动增长类型字段(identity)? win7安装SQL2005提示脚本错误,系统找不到指定文件,求解决,谢谢! 关于存储过程的问题 查询语句的问题
set @sql='<html>测试<img src="图片1" />字符串<img src="图片2" />替换<img src="图片1" /></html>'while charindex('<img src="',@sql)<>0
begin
set @sql=replace(@sql,substring(@sql,charindex('<img src="',@sql),charindex('/>',@sql,charindex('<img src="',@sql))-charindex('<img src="',@sql)+2),'')
endselect @sql/*
<html>测试字符串替换</html>
*/
SELECT SUBSTRING(@str,0,CHARINDEX('<img',@str))+RIGHT(@str,LEN(@str)-CHARINDEX('/>',@str)-1)--------------------
(无列名)
<html></html>
set @va='dsfdsfdsf<img src="dsfsdfsadfasfafdasffdsd<imagdsfdsf" />ds/>fdsfdsdsfdsfdsf<img src="dsfsfffdfsadfasfafdasfdsfdsf" />ds/>fdsfds';
while(CHARINDEX('<img src="',@va,1)>1) --循环处理字符串
begin
set @va=replace(@va, ---将位置 A与 B之间的字符替换成''
SUBSTRING(@va, --获取位置 A与 B之间的字符
CHARINDEX('<img src="',@va,1),--获取<img src="的位置 A
--以下的获取'/>'在<img src=" 之后第一次出现'/>'的位置,+2 是为了补齐'/>'这两字符的位置 B
CHARINDEX('/>',@va,CHARINDEX('<img src="',@va,1))-CHARINDEX('<img src="',@va,1)+2)
,'')end
select @va
set @va='dsfdsfdsf<img src="dsfsdfsadfasfafdasffdsd<imagdsfdsf" />ds/>fdsfdsdsfdsfdsf<img src="dsfsfffdfsadfasfafdasfdsfdsf" />ds/>fdsfds';
while(CHARINDEX('<img src="',@va,1)>1) --循环处理字符串
begin
set @va=replace(@va, ---将位置A之后B个的字符的字符串替换成''
SUBSTRING(@va, --获取位置 A之后B个的字符的字符串
CHARINDEX('<img src="',@va,1),--获取<img src="的位置 A
--以下的获取'/>'在<img src=" 之后第一次出现'/>'的位置,然后取得这两个位置之间的字符长度,+2 是为了补齐'/>'这两字符的位置
CHARINDEX('/>',@va,CHARINDEX('<img src="',@va,1))-CHARINDEX('<img src="',@va,1)+2)
,'')end
select @va