MYSQL REPLACE替换字符的问题,怎替换不规则网址?

update表的名称set替换字段=REPLACE(替换字段,'原来内容','新内容')我要替换的内容都是像下面这样<ahref="不同的网址"target="_blan... update 表的名称 set 替换字段=REPLACE(替换字段,'原来内容','新内容')

我要替换的内容都是像下面这样

<a href="不同的网址" target="_blank" title="不同的标题">

替换成空白

能实现吗?
展开
 我来答
百度网友ded4135
高粉答主

2018-02-11 · 醉心答题,欢迎关注
知道大有可为答主
回答量:2.7万
采纳率:87%
帮助的人:1.2亿
展开全部

专门给你设计了表,详细过程如下:希望能及时结题,彼此尊重。另外一个回答也是我的。

如上图,href后是不同的内容,下面我们把它们修改为统一的abc,你要修改为其他也可以。

sql语句如下:

UPDATE 表1 SET 表1.url = Replace([url],Mid([url],10,InStr([url],'target')-12),' ');

你需要对应替换表名,上面是 表1

字段名,上面是url

运行后效果:

一次可以完成一部分,例如hreft一条语句,title一条语句

d_leo
2014-11-26 · TA获得超过245个赞
知道小有建树答主
回答量:297
采纳率:74%
帮助的人:126万
展开全部
能实现,(如果你说的这个 <a href="不同的网址" target="_blank" title="不同的标题"> 在字段中只出现一次)
思路如下
你可以 找 <a href= 出现的位置 和 "> 出现的位置,然后从左边取和右边取,然后连起来

例如 替换字段 内容如下
AAABBB<a href="不同的网址" target="_blank" title="不同的标题">CCCDDD

用这个语句就能变成AAABBBCCCDDD
select concat(left(替换字段,instr(替换字段,'<a href=')-1),right(替换字段,INSTR(REVERSE(替换字段),'>"')-1))

如果出现n次多执行n次
试试看吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
huanglenzhi
2018-02-11 · 知道合伙人数码行家
huanglenzhi
知道合伙人数码行家
采纳数:117538 获赞数:517195
长期从事计算机组装,维护,网络组建及管理。对计算机硬件、操作系统安装、典型网络设备具有详细认知。

向TA提问 私信TA
展开全部
update 表的名称 set 替换字段=REPLACE
(
替换字段,
mid(替换字段,10,instr(替换字段," ",,12)-1),
'新内容')
中间的函数取出要修改的域名部分。
解释下
10是域名开始的一个字母
截止位数是查找第二个空格的位数减1
之间的就是要替换的内容。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
仰望昆仑山
2014-11-21
知道答主
回答量:24
采纳率:50%
帮助的人:11.2万
展开全部
1、如果是原字段整个为空,很简单。
update 表的名称 set 替换字段=''

2、如果清楚原来内容和新内容,也简单,就用你的那个方法

3、如果不清楚原内容,需要替换双引号中的内容,如下操作
update 表 set 字段= replace(字段, substring(字段, locate('<a href="', 字段)+9,locate('" target', 字段)-locate('<a href="', 字段)-9),'新内容');
其中9是第一个正则的长度。

写个例子

create table demo(url VARCHAR(255));

insert into demo(url) VALUES('<a href="www.baidu.com" target="_blank" title="百度">');

update demo set url = replace(url, substring(url, locate('<a href="', url)+9,locate('" target', url)-locate('<a href="', url)-9),'www.qq.com');
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
飞车菜鸟弟
2014-11-24 · TA获得超过1174个赞
知道小有建树答主
回答量:633
采纳率:94%
帮助的人:325万
展开全部

你要考虑一下REPLACE是不是唯一的方法!之后再去讨论怎么替换。

你是想将整个 <a href="不同的网址" target="_blank" title="不同的标题"> 替换成空白?

那么就这样写

update 表的名称 set 替换字段="" where 限制条件;

你要替换 “不同的网址”,“不同的标题”

update 表的名称 set 替换字段= CONCAT('<a href="',不同的网址,'" target="_blank" title="',不同的标题,'">');
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式