MySQL替换字符串的问题 数据库中存储的空格就是“ ”,而不是“ ”,现在我想把他全部替换成 ,但问题出来了,有些是html标记,里面也有空格“ ”,把这些也替换掉了。比如<a href="#">,a 和href之间的空格。我想问如何只替换正文的空格,而忽略掉html代码之间的空格。100分求助。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 " 根据学校的有关规定,现对2005年需购置的电脑及辅助设备,采取公开招标方式进行采购。现将有关事项公告如下: 2005年4月6日<a href="uploadfiles/2005111515481634802.doc" target=_blank>2005年电脑及其辅助设备招标文件.doc</a>" 上面的是内容,“根据”前面有两个空格,需要替换成 ,而HTML代码里面的空格则不能替换。 如果格式固定,取<前面的字符串,替换其中的空格,再CONCAT<后面的字符串 set @n='根据学校的有关规定,现对2005年需购置的电脑及辅助设备,采取公开招标方式进行采购。现将有关事项公告如下: 2005年4月6日<a href="uploadfiles/2005111515481634802.doc" target=_blank>2005年电脑及其辅助设备招标文件.doc</a>';select concat(replace(left(@n,locate('<',@n)),' ',' '),substring(@n,locate('<',@n),locate('>',@n)-locate('<',@n)+1),replace(right(@n,char_length(@n)-locate('>',@n)),' ',' ')); 这个替换由于MYSQL中不支持REG_REPLACE下正则替换。所以无法在MYSQL中简单用标准的内建函数和SQL语句实现。如果一定要在MYSQL数据库端实现,则可以用存储过程来实现。但一般来说,这类替换是在程序端实现。 #7楼 的方法可以,但问题是你的字符串是不只一对HTML标签。 对,HTML标记不一定会有多少个。所以比较麻烦。 要么写存储过程,要么自己在C#中通过正则替换实现, C#中也就是不超过5句代码的事儿。 MYSQL存储过程中估计30行代码以上。 参数传进来 记得trim 下 如果中间有空格就replace得了 增加一列出问题 如何获得点击率前十的文章,效率要高 MySql中文乱码 mysql中触发器中赋值的问题 如何将mysql5.0的数据库转成4.0可用的? 请通过这个例子简要解释一下*.sql文件的语法 有关乱码问题。 mysql物理数据排序问题:请教 有关流程图! 请教 mysql 设置的问题,命令行模式。 进来看看! 一个多表查询的问题。。。求解
根据学校的有关规定,现对2005年需购置的电脑及辅助设备,采取公开招标方式进行采购。现将有关事项公告如下:
2005年4月6日<a href="uploadfiles/2005111515481634802.doc" target=_blank>2005年电脑及其辅助设备招标文件.doc</a>"
取<前面的字符串,替换其中的空格,
再CONCAT<后面的字符串
2005年4月6日<a href="uploadfiles/2005111515481634802.doc" target=_blank>2005年电脑及其辅助设备招标文件.doc</a>';select concat(replace(left(@n,locate('<',@n)),' ',' '),substring(@n,locate('<',@n),locate('>',@n)-locate('<',@n)+1),replace(right(@n,char_length(@n)-locate('>',@n)),' ',' '));
如果一定要在MYSQL数据库端实现,则可以用存储过程来实现。但一般来说,这类替换是在程序端实现。