当前位置:网站首页>ICer技能01正则匹配
ICer技能01正则匹配
2022-06-23 03:52:00 【捌肆幺幺】
1.匹配指令
| 符号 | 作用 |
|---|---|
| . | 匹配任意一个字符 |
| [abc] | 匹配方括号中的任意一个字符(可以使用-表示字符范围,如[a-z 0-9]匹配小写字母和阿拉伯数字) |
| [^abc] | 匹配除方括号中字符之外的任意字符 |
| \d | 匹配阿拉伯数字,等同于[0-9] |
| \D | 匹配阿拉伯数字之外的任意字符,等同于[^0-9] |
| \x | 匹配十六进制数字 |
| \X | 匹配十六进制数字之外的任意字符 |
| \w | 匹配单词字母,等同于[0-9 A-Z a-z] |
| \W | 匹配单词字母之外的任意字符 |
| \t | 匹配TAB字符 |
| \s | 匹配空白字符 |
| \S | 匹配非空白字符 |
2.位置符号
| 符号 | 表示的位置 |
|---|---|
| $ | 匹配行尾 |
| ^ | 匹配行首(和[^abc]中的符号作用不同) |
| \ < | 匹配单词词首 |
| \ > | 匹配单词词尾 |
3.数量符号
| 符号 | 表示的数量 |
|---|---|
| * | 匹配0-任意个 |
| \ + | 匹配1-任意个 |
| \ ? | 匹配0-1个 |
| \ {n,m} | 匹配n-m个 |
| \ {n} | 匹配n个 |
| \ {n,} | 匹配n-任意个 |
| \ {,m} | 匹配0-m个 |
4.特殊符号
| 符号 | 作用 |
|---|---|
| \ * | 匹配*字符 |
| \ . | 匹配.字符 |
| \ / | 匹配/字符 |
| \ \ | 匹配\字符 |
| \ [ | 匹配[字符 |
5.几个例子
①把所有单词help或Help都改为大写的HELP
:%s/[Hh]elp/HELP/g
- :命令指示
- %所有行有效
- s查找替换
- [Hh]带H或h
②使用单个空格替换一个或多个空格
:%s/ \ +//g
- \ +表示数量
- //中没有间距就是无空格
③删除所有空行(没有任何字符,除了一个回车符)
- :g/^ $ /d:匹配到行首行尾中间无字符则删除
- :g/[ \t]*$/d:多个空格到行尾删除
④删除含有某些字符的行
:g/ERROR/d
- 记住就好hhh
⑤删除每行的所有的前导空格
:%s/^ *//g
- ^ *:表示从行首知道有字符
⑥在文件中的每一行的开始插入“->”
:%s/^/->/g
- 定位行首,插入字符即可
⑦删除以[a,b,c]开头的行
:%s/^ [a|b|c].*$//g
- 删除abc开头的行,而不是a开头或者b开题或者c开头
⑧使用“\ (”和“\ )”符号括起正规表达式,即可在后面使用\1 \2等变量来访问 \ (和\ )中的内容
例:/ \ (a\ +\ )[^a]\ +\1
头和结尾处a的个数相同的字符串
- 相当于保存下来再调用
匹配aabbbaa
匹配aaacccaaa
不匹配abbbaa
⑧交换列表中所有连字符分隔的条目的顺序
ABC: XYZ
: %s/ (.* \ ):\ (.*\ )/\2:\ 1/g
- 先存任意字符到\1
- 然后匹配冒号:
- 再存任意字符到\2
- 然后1 2 互换代替
边栏推荐
- Abnova PSMA bead solution
- Receive incoming files and download (simple usage) a tag
- Pta:6-73 function call
- free( )的一个理解(《C Primer Plus》的一个错误)
- Distance measure - cosine distance
- Abnova LiquidCell-负富集细胞分离和回收系统
- 在Pycharm中使用append()方法对列表添加元素时提示“This list creation could be rewritten as a list literal“的解决方法
- 力扣今日题513. 找树左下角的值
- Abnova fluorescent dye 555-c3 maleimide scheme
- Abnova 血液总核酸纯化试剂盒方案
猜你喜欢

2020:VL-BERT: Pre-training of generic visual-linguistic representation

20000 words + 20 pictures | details of nine data types and application scenarios of redis

聊聊 C# 中的 Composite 模式

Cocos learning diary 2 - scripts and attributes

Cocos learning diary 1 - node
![Fundamentals of 3D mathematics [16] formulas for uniformly accelerated linear motion](/img/51/5b05694bbd0f4fd01dd26cf55b22c7.png)
Fundamentals of 3D mathematics [16] formulas for uniformly accelerated linear motion

Distance measure - cosine distance

PaddlePaddle模型服务化部署,重新启动pipeline后出现报错,trt报错

接收传来得文件并下载(简单用法)a标签

Principle of 8-bit full adder
随机推荐
[acnoi2022] no way without guessing
欢迎使用CSDN-markdown编辑器
zk 有一个节点报 It is probably not running且日志无明显报错
Abnova酸性磷酸酶(小麦胚芽)说明书
Openjudge noi 1.13 50: several
如何让社交媒体成为跨境电商驱动力?这款独立站工具不能错过!
thinkPHP6解决跳转问题
Abnova 血液总核酸纯化试剂盒方案
A mvc5+easyui enterprise rapid development framework source code BS framework source code
E45: ‘readonly‘ option is set (add ! to override)
Cocos学习日记2——脚本和属性
const理解之一
Cocos学习日记1——节点
左值与右值
Abnova LiquidCell-负富集细胞分离和回收系统
Left and right values
Pta:6-71 clock simulation
Dpr-34v/v two position relay
PCB----理论与现实的桥梁
在Pycharm中对字典的键值作更新时提示“This dictionary creation could be rewritten as a dictionary literal ”的解决方法