首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从数据库文本字段中删除文本

从数据库文本字段中删除文本
EN

Stack Overflow用户
提问于 2010-01-06 22:23:43
回答 3查看 993关注 0票数 1

最近,我尝试将一堆博客文章从一个旧博客(SharePoint)导入到我当前的博客(WordPress)。当导入完成后,很多讨厌的<div>标签和其他HTML都进入了帖子的内容,这破坏了我的站点的渲染方式。

我可以查看MySQL数据库中的违规行,并想知道是否有一种方法可以选择性地删除可能导致问题的HTML。可能会通过文本解析在C#中破解这一点,但我想知道如果可以的话,如何使用来实现这一点。

如果要查看数据库文本字段中存在的这些文件之一的全文示例,请参阅我将一个完整的示例文件上传到了我的网站。

我想做的是:

  • 从每个文件的开头删除<![CDATA[<div><b>Body:</b>
  • 删除每个文件末尾的元信息,它可能如下所示:
  • 删除每个<div>并关闭</div>标记,该标记可能具有一个类属性,如下所示:

我以前没有在MySQL中使用过更新语句,我不知道从哪里开始有选择地替换文本字段中的文本。我会在SQL语句中使用regex帮助吗?如何针对远程DB执行语句?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-01-06 22:33:59

在你导入这些帖子之前,清理它们怎么样?似乎处理本地文件(您可以将其作为文本文件处理)要容易得多。然后,您可以在导入之前使用Perl或Python来处理您喜欢的问题。

这假设您仍然可以访问在SharePoint中结束的数据。

票数 2
EN

Stack Overflow用户

发布于 2010-01-06 22:29:28

没有简单的方法来做到这一点,而不使用后端平台,您正在使用的服务您的网站或最尖锐的。我自己也会使用PHP或Perl来清理数据,这在最好的情况下是很棘手的。因此,答案是,可以这样做,但您必须使用某种类型的编程/处理语言才能做到这一点,MySQL本身将无法清理数据。

票数 1
EN

Stack Overflow用户

发布于 2010-01-06 22:39:16

假设您决心像您在问题中所说的那样使用SQL,如果您有使用C#对其进行黑客攻击的技能,那么您应该能够知道如何创建一个存储过程,它使用游标选择行,字符串函数对数据进行按摩,更新以更新行。看看这个:

http://dev.mysql.com/doc/refman/5.0/en/cursors.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2016751

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档