单词替换

来源:互联网 发布:淘宝怎样修改当前主营 编辑:程序博客网 时间:2024/04/30 08:57

支付宝面试的时候,anysql问了个问题,怎样在一个文本中对一个单词进行替换,当时没答上来。当时一直想着通过一个特定的命令解决,后来回去想了想,其实可以用sedvi实现。

1.问题的分析

一个单词比如,longxibendi   在一行中的位置  有三:

a.在行开头

b.在行中间

c.在行末尾

 

分别对应  下面三种模式

^longxibendi  后 加空格

 longxibendi  后 加空格

 longxibendi$

 

2.解决方法一:

比如替换 readme.txt文档中的  longxibendi  单词,替换成 lxbd 

a.查看readme.txt

b.执行命令

c.解释,sed 只是把执行后的文本输出了,但原文本readme.txt还没有变,所以,最好自己再重定向输出到一个文本,然后用mv命令更改文件名,覆盖掉原文件名即可。所以可以写成一个脚本如下:

3.解决方法二:

用vim解决

只需要在命令模式输入

:%s/^longxibendi /lxbd /g  回车

:%s/ longxibendi / lxbd /g  回车

:%s/ longxibendi$/ lxbd/g  回车

 

声明:本文档可以随意更改,但必须署名原作者

作者:凤凰舞者 qq:578989855