首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

VIM:如何使用regex重新格式化依赖于括号类型的列表?

VIM是一款强大的文本编辑器,支持正则表达式(regex)来进行文本的搜索和替换操作。如果你想重新格式化一个依赖于括号类型的列表,可以使用VIM的正则表达式功能来实现。

下面是一个示例的步骤来重新格式化依赖于括号类型的列表:

  1. 打开VIM编辑器并加载你要操作的文件。
  2. 进入命令模式,按下冒号(:)键。
  3. 输入以下命令来使用正则表达式进行替换操作::s/\(\w\+\)\s\+\(\w\+\)/\2, \1/g这个命令中的正则表达式将匹配两个单词,并通过逗号和空格来重新格式化它们的顺序。
  4. 按下回车键执行替换操作。VIM将会将匹配到的内容重新格式化。
  5. 如果你想对整个文件进行替换操作,可以在命令中添加g标志,如下所示::%s/\(\w\+\)\s\+\(\w\+\)/\2, \1/g这将会对整个文件中的匹配内容进行替换。

需要注意的是,上述命令中的正则表达式仅适用于匹配两个单词的情况,并且假设这两个单词之间有一个或多个空格分隔。如果你的列表结构不同,你可能需要调整正则表达式来适应你的情况。

关于VIM的更多信息和使用技巧,你可以参考腾讯云的产品介绍页面:VIM产品介绍

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

《C++Primer》第十七章 标准库特殊设施

使用正则表达式库 指定regex对象选项: regex(re), regex(re, f):re表示一个正则表达式,f是指出对象如何处理标志,默认值为ECMAScript r1 = re:将r1...如果我们编写正则表达式存在错误,则在运行时标准库会抛出一个类型regex_error异常: try { // 错误: alnum漏掉了右括号, 构造函数会抛出异常 regex r(...:可选分隔符 (\\d{4}):表示号码最后四位数字 另外需要注意是,我们希望验证区号部分数字如果用了左括号,那么它也必须使用括号,即我们不希望匹配到(908.555.1800这样号码。...d.max():返回d(e)最小值和最大值 d.reset():重置d状态,使得随后对d使用依赖于d已经生成值 常用分布类型: default_random_engine e; uniform_real_distribution...虽然标准库为所有流类型都定义了seek和tell函数,但是他们是否会做又有意义事情依赖于流绑定到哪个设备。在大多数系统中,绑定到cin,cout,cerr和clog流不支持随机访问。

75230

多语言编程必备十大 Vim 插件

最近,当我重新安装系统时(就像我经常做那样),我觉得这是一次好机会,我想找出多种编程语言环境下最佳 Vim 插件,以及如何将这些插件和每种语言结合起来。...Volt plugin 2、Vim-Rainbow 除了 Python,几乎所有的主流编程语言都使用括号(小括号、方括号和大括号)。通常,它们会嵌套使用多对括号,因此很难搞清楚某个括号开闭区间。...(标准 Vim Leader 键 是 / 字符。)按 Leader 键 + cn,取消注释。对于大多数文件类型,NERD Commenter 会自动使用正确注释符。...例如,如果你正在编辑 BIND 区域文件,并将文件类型设置为 BIND 区域文件,Vim 会正确地使用 ;(分号)字符进行注释。6、Solarized 我喜欢我 Vim 主题配色。...不断缩短列表将显示出与你输入文件名内容相匹配一些文件。我经常使用它,最近使用频率估计比使用 NERDTree 还多。缺点是这个插件依赖于 fzf binary,因此也必须安装这个依赖包。

99820
  • 请马上卸载Notepad++,事实已证明,它可以……

    (和替换)功能,为了提供一个清晰介绍,我将 Sublime Text 查找功能分为 快速查找、标准查找 和 多文件查找 三种类型。...# 快速查找&替换 多数情况下,我们需要查找文中某个关键字出现其它位置,这时并不需要重新将该关键字重新输入一遍然后搜索,我们只需要使用 Shift + ←/→ 或 Ctrl + D 选中关键字,然后...出于篇幅原因,本文不会对正则表达式进行详细介绍,Mastering Regex(中译本:精通正则表达式)对正则表达式原理和各语言下使用进行了详细介绍。...# 括号(Brackets) 编写代码时会碰到大量括号,利用 Ctrl + M 可以快速在起始括号和结尾括号间切换, Ctrl + Shift + M 则可以快速选择括号内容,对于缩进型语言(例如...# 快捷键列表(Shortcuts Cheatsheet) 我把本文出现Sublime Text按其类型整理在这里,以便查阅。 通用(General) 1.

    2.5K10

    卸载 Notepad++!事实已证明,它更牛逼…

    (和替换)功能,为了提供一个清晰介绍,我将 Sublime Text 查找功能分为 快速查找、标准查找 和 多文件查找 三种类型。...# 快速查找&替换 多数情况下,我们需要查找文中某个关键字出现其它位置,这时并不需要重新将该关键字重新输入一遍然后搜索,我们只需要使用 Shift + ←/→ 或 Ctrl + D 选中关键字,然后...出于篇幅原因,本文不会对正则表达式进行详细介绍,Mastering Regex(中译本:精通正则表达式)对正则表达式原理和各语言下使用进行了详细介绍。...# 括号(Brackets) 编写代码时会碰到大量括号,利用 Ctrl + M 可以快速在起始括号和结尾括号间切换, Ctrl + Shift + M 则可以快速选择括号内容,对于缩进型语言(例如...# 快捷键列表(Shortcuts Cheatsheet) 我把本文出现Sublime Text按其类型整理在这里,以便查阅。 通用(General) 1.

    1.2K30

    Vim 里为 Markdown 文档展示导航窗格

    … 不知你此时感受如何,反正我是无比想念 Word 导航窗格,各种编程 IDE Outline。 但等等,我们正在用编辑器之神 Vim 诶!无论想弄啥折腾折腾就有了。...当然 tagbar 功能远不限于此,可以为 C、C++、Python 和 Java 等很多语言提供类和方法列表视图等等,详见 tagbar。...推荐使用 Vundle 管理 Vim 插件,这样就可以简单几步安装插件了。...下载后将 ctags 可执行文件放置到一个在 PATH 环境变量文件夹里,或者 Vim 安装目录 Vim74 文件夹下,比如我是将 ctags.exe 放在 D:\Program Files (x86...\1/h,headings/ 这表示提取 Markdown 文件里一到六级标题,并使用空格缩进表示层次。

    1.3K20

    Linux使用VIM编辑器方法

    Linux 系统中: 用 Vim 打开 .vimrc 文件: vim ~/.vimrc 复制本文最后 选项列表 粘贴到 .vimrc 文件 保存并关闭 (:wq) (此处不建议使用 Vim 编辑 .vimrc...set expandtab 注意:这可能会导致依赖于制表符 Python 等编程语言出现问题。这时,你可以根据文件类型设置该选项(请参考 autocmd)。 2....当光标遍历文件时经过括号时,高亮标识匹配括号: set showmatch ? 3. 搜索 高亮搜索内容所有匹配位置: set hlsearch ?...Vim 可以识别文件类型并仅对代码中注释进行拼写检查。...Vim 包含一个增强功能,使得即使在文件关闭后也可以维护撤消历史记录,这意味着即使在保存、关闭和重新打开文件后,也可以撤消之前更改。历史记录文件是使用 .un~ 扩展名保存隐藏文件。

    1.8K10

    Ansible 如何使用 Filter 插件转换数据

    写在前面 今天和小伙伴分享 Ansible 中过滤器使用 博文内容比较简单 主要介绍常用过滤器和对应Demo 使用过滤器如何处理变量 理解不足小伙伴帮忙指正 食用方式:了解 Ansible 基础语法...,熟悉小伙伴可以直接跳过 变量类型 YAML 结构或值内容定义了确切数据类型。...类型包括: 字符串(字符序列) 数字(数值) 布尔值 日期(ISO-8601 日历日期) Null(将变量设置为未定义变量) 列表或数组(值有序集合) 字典(键值对集合) 「字符串」 字符串是一系列字符...将列表写成以逗号分隔值序列并用方括号括起,或每行一个元素并加上短划线前缀:可以使用从 0 开始索引编号来访问列表特定元素: $ ansible-playbook var_demo.yaml PLAY...regex_findall过滤器,查找所有出现子字符串,匹配行中所有项目,并返回一个列表值。 replace过滤器,换输入字符串中所有出现子字符串,不支持正则表达式。

    4.3K10

    【玩转Lighthouse】在Lighthouse配置VimYouCompleteMe:文本编辑更清爽和强大,并具有一定IDE能力

    [最终效果Demo] Vim Vim安装和使用,我在之前文章就已经介绍: 终端文本编辑神器--Vim命令详解。如何配置Vim以及Vim插件?...[我使用镜像] 编译Vim 首先,我们SSH登录我们Lighthouse服务器,如果不知道怎么SSH连接服务器,可以参考文章: Linux服务器入门:如何远程登录自己腾讯云服务器?...本文使用方法是编译新版本Vim。 克隆Vim源码 首先,我们使用Git克隆Vim最新源码,或者是分支版本。...JavaScript语法高亮和代码格式化。...kien/rainbow_parentheses.vim:支援Vim,使Vim编辑文件内括号,变为“彩虹色”。 preservim/nerdtree:支援Vim,使Vim可以出现IDE目录结构。

    1.9K141

    收藏:因为有这篇Sublime Text使用教程,我立即卸载掉了Notepad+...

    和 多文件查找 三种类型。...快速查找&替换 多数情况下,我们需要查找文中某个关键字出现其它位置,这时并不需要重新将该关键字重新输入一遍然后搜索,我们只需要使用 Shift + ←/→ 或 Ctrl + D 选中关键字,然后 F3...出于篇幅原因,本文不会对正则表达式进行详细介绍,Mastering Regex(中译本:精通正则表达式)对正则表达式原理和各语言下使用进行了详细介绍。...▍括号(Brackets) 编写代码时会碰到大量括号,利用 Ctrl + M 可以快速在起始括号和结尾括号间切换, Ctrl + Shift + M 则可以快速选择括号内容,对于缩进型语言(例如...# 快捷键列表(Shortcuts Cheatsheet) 我把本文出现Sublime Text按其类型整理在这里,以便查阅。 通用(General) 1.

    4.2K30

    请马上卸载Notepad++...!

    和 多文件查找 三种类型。...# 快速查找&替换 多数情况下,我们需要查找文中某个关键字出现其它位置,这时并不需要重新将该关键字重新输入一遍然后搜索,我们只需要使用 Shift + ←/→ 或 Ctrl + D 选中关键字,然后...出于篇幅原因,本文不会对正则表达式进行详细介绍,Mastering Regex(中译本:精通正则表达式)对正则表达式原理和各语言下使用进行了详细介绍。...# 括号(Brackets) 编写代码时会碰到大量括号,利用 Ctrl + M 可以快速在起始括号和结尾括号间切换, Ctrl + Shift + M 则可以快速选择括号内容,对于缩进型语言(例如...# 快捷键列表(Shortcuts Cheatsheet) 我把本文出现Sublime Text按其类型整理在这里,以便查阅。 通用(General) 1.

    2.7K10

    【笔记】《C++Primer》—— 第四部分:高级主题(完)

    ,用新输入结果替换匹配到函数regex_replace和用来匹配迭代器适配器sregex_iterator 默认情况下regex使用是ECMAScript正则语言 匹配方法通常是构造一个string...类型匹配模式,然后用这个模式构造一个正则表达式regex,接着定义一个smatch类型用来保存匹配结果,准备好string类型匹配文本,最后选用适合regex函数来匹配 正则表达式出现错误时会以...regex_error异常抛出,所以使用时需要try-catch 正则表达式编译是非常慢过程,所以应该避免创建不必要表达式 标准库还定义了一系列用来在替换过程中控制匹配和格式标志,但是使用时候我们要在...std命名空间中regex_constants命名空间中使用 17.3有一些正则表达式语法项 C++中我们应该使用随机数库来生成更好随机数,随机数库包含了生成随机unsigned整数序列随机数引擎和利用引擎生成符合特定分布随机数随机数分布器...直观理解就是当我们用解引用符*对成员指针解引用时,我们得到是对应类成员类型,我们还需要对应某个具体对象用点或箭头获取对象中这个成员类型真正值 我们调用成员函数方法和使用成员类差不多,区别是标志着函数名括号仍然不可少

    89410

    关于eslint

    代码检查是一种静态分析,常用于寻找有问题模式或者代码,并且不依赖于具体编码风格。对大多数编程语言来说都会有代码检查,一般来说编译程序会内置检查工具。...JavaScript 是一个动态类型语言,在开发中比较容易出错。因为没有编译程序,为了寻找 JavaScript 代码错误通常需要在执行过程中不断调试。...每一个规则都是一个插件并且你可以在运行时添加更多规则 内置规则和自定义规则共用一套规则 API。 内置格式化方法和自定义格式化方法共用一套格式化 API。...额外规则和格式化方法能够在运行时指定。 规则和对应格式化方法并不强制捆绑使用。 每条规则都是各自独立,可以根据项目情况选择开启或关闭。 用户可以将结果设置成警告或者错误。...禁止不必要括号 no-extra-semi 禁止不必要分号 no-func-assign 禁止对 function 声明重新赋值 no-inner-declarations 禁止在嵌套块中出现变量声明或

    3K20

    网络爬虫 | 正则表达式

    groups() 返回一个包含所有小组字符串元组,从 1 到 所含小组号。 利用括号分组,如将区号从电话号码中分离,添加括号将在正则表达式中创建"分组"。...(\d\d\d)-(\d\d\d-\d\d\d\d),然后可以使用group()匹配对象方法,从一个分组中获取匹配文本。第一对括号是第1组。第二对括号是第2组。...贪婪与非贪婪 如果需要匹配一段包含各种不同类型数据字符串,传统方法需要挨个去匹配,而使用.*可以匹配所有字符,是一种万能匹配方式。...,并返回一个列表,如果没有找到匹配,则返回空列表。...---- # findall() 匹配多个,返回列表 regex = re.compile(r'\d+') regex.findall('one1two2three33four4444') ['1'

    1.2K30

    「云网络安全」为AWS S3和Yum执行Squid访问策略

    在本文中,我们将设置一个示例情况,展示如何使用开源Squid代理从Amazon虚拟私有云(VPC)中控制对Amazon简单存储服务(S3)访问。...随着公司开始将应用程序迁移到云中,Alice团队正在讨论如何使用Amazon Web Services (AWS)实现类似的策略。首先要做是阻断互联网接入。...部署和配置Squid Alice决定使用开源web代理Squid来实现她策略。Squid将允许访问一个已批准服务列表,但拒绝所有其他互联网访问。...配置存储在/etc/squid/squid.conf文本文件中。Alice使用vim编辑文件。...为了支持这两种URL类型,Alice使用了正则表达式。例如,所有域名在美国标准将以“s3.amazon.com”结束,不管URL类型。 Alice返回Squid实例,打开配置文件。

    3K20

    Scala | 教程 | 学习手册 --- 字面量值变量和类型

    字面量Literal:如数字5、字母A和文本“Hello World”,是直接出现在源代码中数据 值value:不可变、有类型存储单元。不允许重新赋值 变量var:可变、有类型存储单元。...类型type:所有数据都对应一个特定类型。所有scala类型都定义为包含方法类,这些方法用来处理数据。...input string> 在字符串最后加上一个r操作符,可以将字符串转换为正则表达式类型,这会返回一个Regexinstantce scala> val input = "Enjoying this...hashCode, to\, toString 元组 包含一个或多个值得有序容器,不同于列表和组,没有办法迭代处理一个元组中元素,用小括号包围 格式 ( , [...,red) # 使用关系操作符->来暗示这个是键值对,创建一大小为2元组

    66910

    第二十章 : 正则表达式

    一个字符集合可能包含任意多个字符,并且元字符被放置到中括号里面后会失去了它们特殊含义。然而,在两种情况下,会在中括号表达式中使用元字符,并且有着不同含义。...If not, try this command mode command: 依赖于系统中 vim 特殊配置,匹配项将会被高亮。...注意:依赖于发行版,vim 有可能支持或不支持文本搜索高亮功能。尤其是 Ubuntu 自带了一款非常简化 vim 版本。...在这样系统中,你可能要使用软件包管理器来安装一个功能更完备 vim 版本。...这个命令结果是一个包含字符串“regex”或者“regularexpression”文件列表。正如我们所看到,正则表达式会出现在大量程序中。

    38510

    【2】Pycharm插件推荐,超级实用!每个小trick都可以快速提升变成效率!

    如何导入插件: 选择在本地安装 1.Grep Console 由于Intellij idea不支持显示ascii颜色,grep-console 可以设置不同级别log字体颜色和背景色. 2.CodeGlance...4.codota 整行代码自动补全 基于海量Java代码和你代码上下文给予整行代码建议,帮助你更快地编写错误更少代码 搜索类似代码示例 如果你需要某些API使用示例。...Codota可以根据代码上下文帮你搜索出最好代码示例 5.Rainbow Brackets 括号彩虹,可以将配对括号采用同一个颜色显示。         ...,让自己对代码工作量了然于心 statistic是一个项目统计插件,简单来说就是可以给出一个项目的统计信息,包括文件和代码量等,关于统计信具体内容一会再讲,先来看下Statistic使用方法。...-让我们在 Pycharm 中 使用 vim 来编辑代码 Regex Tester -PyCharm第三方插件,可以测试正则表达式 Json Parser -json格式化工具

    2.4K30

    【笔记】《C++Primer》—— 第17章:标准库特殊设施

    regex_replace和用来匹配迭代器适配器sregex_iterator 默认情况下regex使用是ECMAScript正则语言 匹配方法通常是构造一个string类型匹配模式,然后用这个模式构造一个正则表达式...regex,接着定义一个smatch类型用来保存匹配结果,准备好string类型匹配文本,最后选用适合regex函数来匹配 正则表达式regex在构造时候可以附加参数,例如icase参数会忽略大小写...0是整个元素匹配式,其他依次是子表达式匹配结果 当我们需要在序列中替换一个正则表达式时,应该使用regex_replace函数来处理,这个函数接收待处理串dest,格式化字符串fmt和正则表达式r...我们通常不会直接使用这个数,因为范围常常和我们需要不同 随机数引擎依赖于“种子”来从伪随机数序列中选择一个位置开始生成随机数,这就是通常我们说到"计算机生成是伪随机数"。...是默认随机数引擎,不同引擎有不同随机性质量,我们在构造引擎实例时候构造函数参数可以传入一个整数值s,或者后期调用函数seed重新指定s作为种子,这之后每次调用引擎都会生成一个随机数 当没有指定种子时引擎使用是内置默认种子

    1K20

    Squid 代理服务器之 ACL 访问控制

    定义访问控制列表 4.1 方法一 4.2 方法二 ---- 1. ACL 访问控制方式 根据源地址、目标 URL、文件类型等定义列表 格式为:acl 列表名称 列表类型 列表内容 ......ACL 规则优先级 一个用户访问代理服务器时,Squid 会以从上至下顺序匹配 Squid 中定义所有规则列表,一旦匹配成功,立即停止匹配 所有规则都不匹配时,Squid 会使用与最后一条相反规则...“拒绝” 访问控制 #定义访问控制列表 #用法格式如下: acl [列表名称] [列表类型] [列表内容] […] #常用 vim /etc/squid.conf ...... acl localhost...定义访问控制列表 格式: acl [列表名称] [列表类型] [列表内容] 列表名称:名称自定义,相当于给 acl 起个名字(有点类似于 shell 脚本变量名) 列表类型:必须使用 squid...预定义值,对应不同类别的控制条件 列表内容:是要控制具体对象,不同类型列表所对应内容也不一样,可以有多个值(以空格为分隔,为 “或” 关系) 4.1 方法一 vim /etc/squid.conf

    78210

    Vim 快捷命令

    gu 将选中内容全转为大写 gU 将当前行变成小写 guu 将当前行变成大写 gUU 选择 功能 按键 选中上一次选择区域 gv 选中括号内区域 vi{、vi[、vi( 搜索 功能 按键 向下查找字符串...vimdiff 功能 按键 移动到上一个不同处 [c 移动到下一个不同处 ]c 该差异点使用当前文件 dp 该差异点使用其它文件 do 手动刷新重新比较 :diffupdate Buffer...功能 按键 查看 Buffer 列表 :ls 转到 Buffer 列表下一个 Buffer :bn 转到 Buffer 列表上一个 Buffer :bp 转到 Buffer 列表 num 号...Buffer :bnum 你之前待过一个 Buffer :b# 从 Buffer 列表中删除 num 号 Buffer :bdnum 组合命令 可以使用 | 来组合命令,比如 cmd1 | cmd2...删除行 Leader-tdd 重新格式化表格 Leader-tr 文章来自:https://abbeyok.com/wiki/vim/ 本文由 Alone88 创作,采用 知识共享署名4.0 国际许可协议进行许可

    77110
    领券