加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

regex – 如何读取此命令以删除行尾的所有空格

发布时间:2020-12-16 01:25:58 所属栏目:安全 来源:网络整理
导读:我在 http://rayninfo.co.uk/vimtips.html发生了这个充满超级有用且相当神秘的vim技巧的页面.我已经尝试了其中的一些,我理解发生了什么,足以能够在我脑海中正确地解析它,以便我以后可以重新创建它.一个我很难让我的脑袋缠绕,但是以下两个命令可以从每一行的
我在 http://rayninfo.co.uk/vimtips.html发生了这个充满超级有用且相当神秘的vim技巧的页面.我已经尝试了其中的一些,我理解发生了什么,足以能够在我脑海中正确地解析它,以便我以后可以重新创建它.一个我很难让我的脑袋缠绕,但是以下两个命令可以从每一行的末尾删除所有空格
:%s=  *$==                  : delete end of line blanks
:%s= +$==                  : Same thing

我正在将%s解释为文件中每一行的字符串替换,但之后我迷失了看起来像s和regex的一些粗略变化.我习惯于看到和使用:s / regex / replacement.但上述情况令人困惑.

以上命令在英语中是什么意思,一步一步?

正则表达式分隔符不必是斜杠,它们也可以是其他字符.如果您的搜索或替换字符串包含斜杠,这很方便.在这种情况下,我不知道为什么他们使用等号而不是斜线,但你可以假装等于是斜线:
:%s/  *$//     
:%s/ +$//

那有意义吗?第一个搜索空格,后跟零个或多个空格,第二个搜索一个或多个空格.每个都用$固定在该行的末尾.然后替换字符串为空,因此删除空格.

实际上,我理解你的困惑.如果你看一下:help:s你必须向下滚动几页才能找到这个笔记:

*E146*

Instead of the '/' which surrounds the pattern and replacement string,you
can use any other character,but not an alphanumeric character,'','"' or
'|'. This is useful if you want to include a '/' in the search pattern or
replacement string. Example:

06001

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读