1. 基本的替换
:s/vivian/sky/ 替换当前行第一个 vivian 为 sky
:s/vivian/sky/g 替换当前行所有 vivian 为 sky
:n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky
:n,$s/vivian/sky/g 替换第 n 行开始到最后一行中每一行所有 vivian 为 sky
(n 为数字,若 n 为 .,表示从当前行开始到最后一行)
:%s/vivian/sky/(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky
:%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky
2. 可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符
:s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/
:%s+/oradata/apras/+/user01/apras1+ (使用+ 来 替换 / ): /oradata/apras/替换成/user01/apras1/
3. 删除文本中的^M
问题描述:对于换行,window下用回车换行(0A0D)来表示,linux下是回车(0A)来表示。这样,将window上的文件拷到unix上用时,总会有个^M,请写个用在unix下的过滤windows文件的换行符(0D)的shell或c程序。
使用命令:cat filename1 | tr -d “^V^M” > newfile;
使用命令:sed -e “s/^V^M//” filename > outputfilename
需要注意的是在1、2两种方法中,^V和^M指的是Ctrl+V和Ctrl+M。你必须要手工进行输入,而不是粘贴。
在vi中处理:首先使用vi打开文件,然后按ESC键,接着输入命令:
:%s/^V^M//
:%s/^M$//g
如果上述方法无用,则正确的解决办法是:
tr -d “\r” < src >dest
tr -d “\015〃 dest
strings A>B
4. 其它用法
利用 :s 命令可以实现字符串的替换。具体的用法包括:
:s/str1/str2/ 用字符串 str2 替换行中首次出现的字符串 str1
:s/str1/str2/g 用字符串 str2 替换行中所有出现的字符串 str1
:.,$ s/str1/str2/g 用字符串 str2 替换正文当前行到末尾所有出现的字符串 str1
:1,$ s/str1/str2/g 用字符串 str2 替换正文中所有出现的字符串 str1
:g/str1/s//str2/g 功能同上
从上述替换命令可以看到:g 放在命令末尾,表示对搜索字符串的每次出现进行替换;不加 g,表示只对搜索字符串的首次出现进行替换;g 放在命令开头,表示对正文中所有包含搜索字符串的行进行替换操作。
代替前面几个字符:%s/^...//g 一个小点代表一个字符
代替后面几个字符:%s/...$//g 一个小点代表一个字符
分享到:
相关推荐
### vi中实现字符串的替换 ...以上就是如何在vi/vim编辑器以及通过Perl命令来实现字符串替换的方法。这些技巧能够帮助开发者高效、准确地完成文本替换任务,尤其是在面对大量文件或复杂替换逻辑时更为有效。
本VI为一种16进制数通过转换显示成正常的字符串的代码。很多朋友在写串口程序时可能经常碰到接收到的是十六进制数字型信息,但最终要处理的是字符串信息。通过这个VI可以解决该问题
创建一个新的VI,将“删除字符”和“字符串长度”这两个函数添加到程序框图中。连接字符串输入到这些函数,然后将它们的输出连接到适当的控件或指示器,以在前面板上显示结果。 5. **运行项目**: 描述中提到项目...
### VI编辑器指令详解 #### 一、基本编辑指令 VI编辑器是一种极其强大的文本编辑工具,尤其在Unix和Linux系统中广泛使用。下面将详细介绍VI编辑器的基本编辑指令。 ##### 新增(Append) - **a**:从光标所在...
**vi与vim编辑器快速学习指南** 在Linux和Unix系统中,`vi`(Visual Editor)是一个非常重要的文本编辑器,而`vim`(Vi IMproved)是其增强版,继承了vi的强大功能并增加了许多现代特性。了解并熟练使用vi/vim可以...
有些串口通信要求是16进制的发送,下位机才会正常接收。我参照网上一些高手的框图做了一个小的子VI,可以将字符串类型转成16进制类型,可以用在类似于串口调试助手的地方。水平不高,仅供参考。
确保子VI内部的计算或处理过程能够快速完成,以便实时提供数据。 2. 连接子VI:在主VI中,将子VI拖放到工作区,并通过连线将输入数据从主VI传递到子VI的输入端口。同样,从子VI的输出端口拉出连线,连接到主VI中...
"字符替换"函数允许我们指定要替换的字符和新的字符。例如,如果你想要移除字符串中的某个特定字符,你可以将其替换为空字符(""),这相当于删除了该字符。 2. **循环遍历法**: 使用“字符串到字符数组”函数将...
在提供的压缩文件"字符串倒序形式快速读取文本最后一行.vi"中,可以看到上述步骤被可视化地表示为LabVIEW的前面板和程序框图。前面板可能包含输入和输出端口,用户可以输入文件路径,而输出则是最后一行的字符串。...
用labview实现字符串转换成图片,十六进制字符串源码转换成图片的过程,非常好用,欢迎大家分享我希望能对大家有帮助
本篇文章将详细探讨如何使用LabVIEW实现字符串与数组之间的转化,主要基于提供的两个VI:`string to array.vi`和`array to string.vi`。 首先,让我们了解字符串和数组的基本概念。在LabVIEW中,字符串是由字符组成...
在这个“删除字符串中相同的字符.vi”文件中,我们可以预期找到以下组件: 1. **字符串数组**:LabView中的字符串通常以数组的形式存在,尤其是当我们需要处理多个字符串或者遍历字符串的每个字符时。在这个案例中...
vi 命令大全可以作为参考手册,帮助用户快速掌握 vi 编辑器的使用。 光标移动 * h:将光标左移一格 * l:将光标右移一格 * k 或 Ctrl+p:光标上移一行 * j 或 Ctrl+n:光标下移一行 * w:将光标移到下一个小字的...
你可以直接在字符串簇中输入文本,也可以通过连接其他VI的输出来动态生成字符串。 2. **字符串函数**:LabVIEW提供了丰富的字符串函数库,包括“连接”(Concatenate)、“分割”(Split)、“查找”(Find)、...
### LabVIEW 子 VI 改变主 VI 控件属性详解 ...通过以上步骤,我们不仅实现了通过子 VI 改变主 VI 控件属性的目标,还加深了对 LabVIEW 中引用句柄、属性节点等核心概念的理解,为后续更复杂的应用奠定了基础。
这个节点用于运行或打开一个指定路径的VI,同时返回一个VI引用,可用于后续的交互。 3. **运行子VI**:当你在运行的VI(如test1.vi)中调用另一个VI(如test2.vi),可以通过将“打开VI引用节点”放置在前面板上,...
一个汉字=2个英文字母=2字节 官方标准:1汉字=2字节 1字节(Byte)=8字位=8个二进制数,在labview中,有时需要对字符串进行分割提取其中的中文字符,需要一定方法来实现,此方法可对其实现分割,并正确显示出来。
"vi +[#] file": 打开文件,并将光标移到指定的行。例如,"vi +100 records" 从第100行开始编辑文件records,命令三个部分用空格隔开,省略#(vi + file)则光标位于第一行 "vi +/str file": 打开文件,光标定位在...
- **进入VI编辑器**:通过命令行输入 `vi filename` 可以打开一个新文件或现有文件进行编辑。 - **退出VI编辑器**: - **保存并退出**:`:wq` 或 `:x` - **不保存退出**:`:q!` #### 三、基本操作详解 ##### 3. ...
软键盘vi,一维数组转换为符号分隔字符串vi等的子vi