您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息
三六零分类信息网 > 邢台分类信息网,免费分类信息发布

这个如果用mysql语句来替换,请问要怎么写 ?

2024/3/3 12:10:43发布28次查看
我的问题:
求一个网址截取的正则替换表达式
http://p.yiqifa.com/n?k=2mlernws6e4h2mleri6h2mlswn3orndswn2e6qls1ndf6zlerzyh2mle6n6w3e3lmzqt6culujeh&spm=1.1.1.1&t=http://www.xuansou.com/
这样一个网址,想把第二个http://前面的内容全部替换成空
也就是只想保留http://www.xuansou.com/
需要怎么弄,谢谢,我是菜鸟 
jordan102版主的正确回答我已经结帖了:
$s = 'http://p.yiqifa.com/n?k=2mlernws6e4h2mleri6h2mlswn3orndswn2e6qls1ndf6zlerzyh2mle6n6w3e3lmzqt6culujeh&spm=1.1.1.1&t=http://www.xuansou.com/';
echo preg_replace('/.+?t=/', '', $s);
以上是用于php代码的,
这个如果用mysql语句来替换,请问要怎么写 ?
回复讨论(解决方案) 截取出来就是了
substring_index(字段名, 't=', -1)
update alibaba_site set url = replace(url,substring_index(url,'t=',-1),'') where id=2452
这样的话整个字段的值全部玩完了
update alibaba_site set url = replace(url,substring_index(url,'t=',-1),'') where id=2452
这样的话整个字段的值全部玩完了
update alibaba_site set url = replace(url,substring_index(url,'t=',-1),'') where id=2452
这样的话整个字段的值全部玩完了  update ylmf_site set url = substring_index(url,'url=',-1) where id=2452
试了这样是可以的,不过有个问题
就是最后一个网址的前面那些字符串是变化多端的
每替换一批都要修改一次
'前面那些字符串' 是指哪些?
这个最好用php处理,mysql不支持复杂的正则写法,如果觉得存储在字段的值,不满足自己,可以php写个正则替换脚本执行。
'前面那些字符串' 是指哪些?
网址1:http://click.linktech.cn/?m=idaphne&a=a100113464&l=99999&l_cd1=0&l_cd2=1&u_id=88819&tu=http%3a%2f%2fwww.xuansou.com%2f
网址2:http://p.yiqifa.com/n?k=2mlernws6e4h2mleri6h2mlswn3orndswn2e6qls1ndf6zlerzyh2mle6n6w3e3lmzqt6culujeh&spm=1.1.1.1&t=http://www.xuansou.com/
这二个网址中的http://www.xuansou.com的前面就是指 “'前面那些字符串'  ”
怕种mysql正则好实现不,如果不好实现,用您的那个xxxx_index也是可以的,虽然麻烦了一点
update ylmf_site set url = concat('http', substring_index(url,'=http',-1)) where id=2452
邢台分类信息网,免费分类信息发布

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录