假设你有一些这样的线条
1 int some_function() { 2 int x = 3; // Some silly comment
等等.缩进用空格完成,每个缩进都是两个空格.
您想要将每个缩进更改为三个空格.简单的正则表达式
s/ {2}/ /g
不适合你,因为这会改变一些非空格;在这种情况下,它会将之前的两个空格更改为一些愚蠢的注释到三个空格,这是不需要的. (如果在行的后端对齐了表或注释,这会变得更糟)
你不能简单地使用
/^( {2})+/
因为你会替换什么?我不知道一个简单的方法来找出一个正则表达式匹配的次数,所以我们不知道插入多少个改变的缩进.
您可以随时逐行删除缩进,测量它们,构建一个新的缩进字符串,并将其粘贴到行上,但是如果有正则表达式则会更简单.
是否有正则表达式替换如上所述的缩进级别?
原文地址:https://www.jb51.cc/regex/357062.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。