我常用的编辑器是Sublime Text,但是Sublime Text不支持GBK编码。虽然可以装插件解决,但插件并不十分可靠。例如批量操作多个GBK编码的文件,保存后发现还是有几个文件变成乱码了。所以我现在用Notepad++来批量操作GBK文件。
Notepad++原生支持GBK,另外它有个好,就是跑的特别快。当操作数百上千个文件时,文件打开速度和保存速度比Sublime Text高到不知哪里去了。
但是Notepad++也并不完美,它默认的替换功能不支持查找、替换多行文本,如果我们把多行文本直接粘贴进去,只会留下第一行。这个时候就得费点事了,用扩展模式手动加换行符\r\n:
如果替换后的文字也需要是换行的,那么也得加\r\n。
由于Notepad++的查找、替换输入框只会保留多行文本的第一行,所以我们得先在别的地方加好换行符,然后复制到Notepad++里,这点也很蛋疼,不过只能忍了。
ps:有个超级替换软件UltraReplace其实在替换方面更好使,不用考虑编码问题,原生支持换行,而且也省去了自己打开文件、保存文件的步骤。不过人嘛,有时候还是得自己弄才放心。这软件万一替换出问题了可没法撤销的。在我对它充分了解之前,多行操作还是先用编辑器顶着吧。
使用Notepad++进行多行操作
一个 dedecms后台的网站,现在要把网站所有文章里的某些文字替换,我们可以到后台的“数据库内容替换”里,选择以下几个地方替换即可。
更新:还是写个 SQL 吧,更方便一些;
/* 替换文章正文 */ UPDATE `dede_addonarticle` SET `body`=replace(body,'old','new'); /* 替换文章标题 */ UPDATE `dede_archives` SET `title`=replace(title,'old','new'); /* 替换文章简介 */ UPDATE `dede_archives` SET `description`=replace(`description`,'old','new'); /* 替换栏目内容 */ UPDATE `dede_arctype` SET `content`=replace(content,'old','new');
1.dede_addonarticle表中的body字段,这是文章的正文。
dedecms后台批量替换网站文字
步骤:1、 dedecmscms后台——核心——批量维护——数据库内容替换
2、如果你需要批量替换文章标题,选择dede_archives数据库表,字段选择title字段,选择普通替换。例如:被替换的内容: dedecmscms批量替换文章标题和内容方法集绵,替换为:dedecms批量替换文章标题和内容方法,输入安全确认码,开始替换数据,最后更新生成以下就ok。
3、如果你需要替换文章摘要内的某一个关键词,例如想把“dedecms”替换为“ dedecmsdedecms”,可以选择dede_archives数据表,选择description字段,填写需要被替换的内容:dedecms,替换为: dedecmscms,输入安全确认码,开始替换数据,最后更新生成以下就ok。
4、如果你需要替换文章正文某些关键词,例如想把"思源SEO博客"替换为"思源SEO",可以选择dede_addonarticle数据表,选择body字段,填写需要被替换的内容:站长网,替换为:站长,输入安全确认码,开始替换数据,最后更新生成一下就ok。
这种方法直接在 dedecmscms站点后台操作,比较直观,更容易操作。