vim学习六之搜索命令「建议收藏」

vim学习六之搜索命令「建议收藏」目录Vim基本搜索命令/或者?搜索n/N正反向下一个特殊搜索Vim高亮搜索搜索大小写敏感搜索进阶Vim正则表达式搜索查找在行首的特定串查找在行尾的特定串匹配特定行Vim基本搜索命令/或者?搜索在Vim普通模式下,输入/或?符号就进入了搜索模式,/用于正向往下搜索,?用于反向往上搜索。n/N正反向下一个在搜索模式下可以对Vim打开的整个文本内容进行搜索,当按下n时可以继续正向查找下一个相匹配的目前单词。N的作用与n相反,是往上反向搜索目标单词。特殊搜索在Vim命

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

Vim基本搜索命令

/ 或者? 搜索

在Vim普通模式下,输入 / 或 ? 符号就进入了搜索模式,/ 用于正向往下搜索,? 用于反向往上搜索。

n/N 正反向下一个

在搜索模式下可以对Vim打开的整个文本内容进行搜索,当按下 n 时可以继续正向查找下一个相匹配的目前单词。N 的作用与 n 相反,是往上反向搜索目标单词。

光标处单词搜索

在Vim命令模式下,如果要搜索当前光标下的单词,除了可以使用/ 和 ?外,还可以使用特殊命令* 和 #。

假设光标当前所有单词为the,那么在当前光标位置执行命令 * 相当于搜索命令 /<the>,命令 # 等同于命令 ?<the>。

\< 是一个单词定界符,表示只匹配单词的开头;
\> 也是单词定界符,表示只匹配单词末尾。

注意:搜索一些特殊的字符,例如:*、[、]、^、%、/、?、~、$等,需要在它们的前面加上转义符号\。

Vim高亮搜索

为了在Vim中高亮显示被搜索的字符,可以使用命令 :set hlsearch,可以在Vim命令行模式执行命令或者在配置文件 .vimrc 中进行永久设置。

如果需要清除最近一次的屏幕搜索高亮结果,可以在Vim命令行模式使用命令 :nohlsearch 或其缩写形式 :noh。

搜索大小写敏感

默认Vim搜索命令是大小写敏感的,因此,搜索 the 不会查找到 The。使用命令 :set ignorecase 会使得Vim搜索变得不区分大小写。

可以在搜索命令中使用 \c 来强制使得当前搜索模式不区分大小写,
而命令 \C 则会强制当前搜索模式大小写敏感。
因此,/the\c 既会查找 the,也会查找到 THE 或者 The 等等。

搜索进阶

在搜索命令前还可以增加一个整数,用于表示搜索目标出现的位置。
例如,3/pattern 将会搜索模式 pattern 第三次出现的位置,
而 3* 会搜索当前光标所在位置单词第三次出现的位置。

Vim正则表达式搜索

为了更好的进行搜索,Vim支持正则表达式,最基本的正则表达式规则包括:

^         表示一行的开头
$         表示一行的结尾
.         表示任意一个字符
*         匹配0次或n次

查找在行首的特定串

请添加图片描述

查找在行尾的特定串

请添加图片描述

匹配特定行

请添加图片描述

上图中使用了/^test.*$
其中^表示匹配行首、
.*表示匹配任意字符、
$表示匹配行尾,
合起来表示搜索任意以test开头的行。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/190343.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 决策树算法原理及案例「建议收藏」

    决策树算法原理及案例「建议收藏」机器学习在各个领域都有广泛的应用,特别在数据分析领域有着深远的影响。决策树是机器学习中最基础且应用最广泛的算法模型。本文介绍了机器学习的相关概念、常见的算法分类和决策树模型及应用。通过一个决策树案例,着重从特征选择、剪枝等方面描述决策树的构建,讨论并研究决策树模型评估准则。最后基于R语言和SPSSModeler这两个工具,分别设计与实现了决策树模型的应用实例。1.机器学习概念

    2022年4月18日
  • 基于Android点餐APP系统的设计与实现[通俗易懂]

    基于Android点餐APP系统的设计与实现[通俗易懂]假如您对此内容感兴趣,你可以加QQ群:868378707(毕业设计online);搜索微信小程序“毕设编程Online”,免费获取源码;基于Android的点餐系统由服务器端和安卓客户端两部分组成。服务器端供餐厅工作人员使用,主要实现菜品信息管理;安卓客户端由餐厅客户使用,主要实现浏览菜品,点餐等功能。主要内容如下:服务器端:1:用户登录:用户在使用系统前先进行登录功能。2:菜品信息管理:包括菜品名称,菜品类别,菜品价格,菜品图片,菜品介绍,菜品发布等信息等增删改查功能3:…

    2022年6月19日
  • Java单例模式的不同写法(懒汉式、饿汉式、双检锁、静态内部类、枚举)[通俗易懂]

    Java单例模式的不同写法(懒汉式、饿汉式、双检锁、静态内部类、枚举)[通俗易懂]Java中单例(Singleton)模式是一种广泛使用的设计模式。单例模式的主要作用是保证在Java程序中,某个类只有一个实例存在。一些管理器和控制器常被设计成单例模式。单例模式好处:它能够避免实例对象的重复创建,不仅可以减少每次创建对象的时间开销,还可以节约内存空间; 能够避免由于操作多个实例导致的逻辑错误。 如果一个对象有可能贯穿整个应用程序,而且起到了全局统一管理控制的作用…

    2022年7月25日
  • 15个权威的PLC学习资料下载地址 (西门子、三菱、欧姆龙)

    15个权威的PLC学习资料下载地址 (西门子、三菱、欧姆龙)论坛贴吧及工作中经常有人问PLC的学习资料去哪里下载,比如博图TIA软件哪里下载,怎么安装。三菱PLC的编程软件哪里下载等等,一般得到的回复是去官网啊,可是去官网下载界面也不太好找。今天整理了一下,把西门子、三菱、欧姆龙的官方下载地址直接贴出来供大家直接使用。比如下文第一个链接西门子资料下载中心,不仅包括西门子相关编程软件的下载,还包括常见系列的编程手册、产品目录、新手必读等等。西门子…

    2022年10月18日
  • ext.apply()_函数evaluate的应用

    ext.apply()_函数evaluate的应用apply的用法:    Ext中apply及applyIf方法的应用apply及applyIf方法都是用于实现把一个对象中的属性应用于另外一个对象中,相当于属性拷贝。不同的是apply将会覆盖目标对象中的属性,而applyIf只拷贝目标对象中没有而源对象中有的属性。apply方法的签名为“apply(Objectobj,Obj

    2022年7月28日
  • Web安全:概述_逆向和Web安全

    Web安全:概述_逆向和Web安全文章目录浏览器安全同源策略多进程结构沙箱恶意网址拦截跨站脚本攻击XSS定义示例分类浏览器安全同源策略浏览器的同源策略,限制了来自不同源的“document”或脚本对当前“document”的读取或修改。影响源的因素有:host、子域名、端口、协议等。多进程结构将浏览器的各个功能模块分开,各个浏览器实例分开,这样若一个进程崩溃,也不会影响到其他进程。GoogleChrome是第一个采取多进程架构的浏览器,其主要进程包括:浏览器进程、渲染进程、插件进程、扩展进程等。其中插件进程如flash、ja

    2022年9月14日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号