正则表达式备忘录
Regular Expressions Cheatsheet中文版
原文:https://www.maketecheasier.com/cheatsheet/regex/

测试文件a.txt

0x1:

If you work with text,

you’ll appreciate

how useful regular expressions are.

0x00001:

Regular expressions

are everywhere in Linux

for searching through text

right down to the character.

0x0000001:

This Regular Expressions cheatsheet

will be useful

for people

who simply need a little refresher

from time

to time.

字符

描述

例子

. (点)

任何单个字符,除了换行(\n)

c.t 匹配 "cat", "cut" 或 "cot."。

'任意字符加im':

[root@test: /tmp]# egrep '.im' a.txt

who simply need a little refresher

from time

to time.

* (星号)

重复前一个表达式0或多次

12*3 匹配 "13", "123", "1223", "12223"。

与 . 合用代表任何字符。

m.*easier 匹配 "maketecheasier"。

'x加任意个0加1:'

[root@test: /tmp]# egrep 'x0*1:' a.txt

0x1:

0x00001:

0x0000001:

'任何包含f加任意字符加l'

[root@test: /tmp]# egrep 'f.*l' a.txt

how useful regular expressions are.

will be useful

for people

+ (加号)

重复前一个表达式1或多次

12+3 匹配 "123","1223","12223"

'x加至少一个0加1:' (比较上一个用*的)

[root@test: /tmp]# egrep 'x0+1:' a.txt

0x00001:

0x0000001:

? (问号)

前一个字符可有可无

ma?ke 匹配 "make", "mke"

'有n或无n加ee'

[root@test: /tmp]# egrep 'n?ee' a.txt

This Regular Expressions cheatsheet

who simply need a little refresher

^ (尖号)

匹配字符串的开头

^he 匹配以he开头的 "hello", "hell", "help", "he is a boy"

'以空格开头的行'

[root@test: /tmp]# egrep '^ ' a.txt

how useful regular expressions are.

are everywhere in Linux

for searching through text

right down to the character.

will be useful

for people

who simply need a little refresher

from time

to time.

$ (美刀)

匹配字符串的结尾

ed$ 匹配以ed结尾的 "acted", bed", "greed"

'字母e结尾的行'

[root@test: /tmp]# egrep 'e$' a.txt

you’ll appreciate

from time

(...) (小括号)

匹配字符组合

(ak) 匹配 "make", "take"

'包含 it 的'

[root@test: /tmp]# egrep '(it)' a.txt

If you work with text,

who simply need a little refresher

{n} (大括号,n是大于0的整数)

重复前一个字符n次,n>0

12{3}5 匹配 "12225"

'x加4个0加1'

[root@test: /tmp]# egrep 'x0{4}1' a.txt

0x00001:

[...] (中括号)

匹配里面的任意一个字符

[abc] 匹配字符串"abc"中的"a","b" 或 "c"

'所有包含v或b的'

[root@test: /tmp]# egrep '[vb]' a.txt

are everywhere in Linux

will be useful

[^...]

匹配任意字符,除了里面定义的

a[^b]c 匹配 "aec", "acc", "adc", 但不匹配 "abc"

'f前面不能是空格或e'

[root@test: /tmp]# egrep '[^ e]f' a.txt

If you work with text,

| (管道符)

匹配管道符分隔的任一字符串

col(o|ou)r 匹配 "color", "colour"

- (连字符)

指定某个范围内的字符一般是[a-z],[A-Z],[1-9],[a-zA-Z1-9]

a[a-z]c 匹配 "abc", "acc", "adc"

\ (反斜线)

转义符,将特殊符合转义为符号本身

a\*c 匹配 "a*c".

\n, \r, \t

代表 换行,回车,制表符

\b...\b

匹配整个单词

\bTech\b 匹配 the word "Tech" in "Make Tech Easier".

找到单词time

[root@test: /tmp]# egrep '\btime\b' a.txt

from time

to time.

正则表达式备忘录-Regular Expressions Cheatsheet中文版的更多相关文章

  1. 正则表达式(Regular expressions)使用笔记

    Regular expressions are a powerful language for matching text patterns. This page gives a basic intr ...

  2. [笔记] 精通正则表达式/Mastering Regular Expressions

    / 匹配<emphasis>这个tag标注的IP地址的RE:‘<emphasis>([0-9]+(\.[0-9]+){3})</emphasis>' / 锚定--a ...

  3. Regular Expressions all in one

    Regular Expressions all in one Regular Expressions Cheatsheet https://developer.mozilla.org/en-US/do ...

  4. 自学Zabbix8.1 Regular expressions 正则表达式

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix8.1 Regular expressions 正则表达式 1. 配置 点击Adm ...

  5. Python之Regular Expressions(正则表达式)

    在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要.正则表达式就是用于描述这些规则的工具.换句话说,正则表达式就是记录文本规则的代码. 很可能你使用过Windows/Dos下用 ...

  6. 转载:邮箱正则表达式Comparing E-mail Address Validating Regular Expressions

    Comparing E-mail Address Validating Regular Expressions Updated: 2/3/2012 Summary This page compares ...

  7. Regular Expressions --正则表达式官方教程

    http://docs.oracle.com/javase/tutorial/essential/regex/index.html This lesson explains how to use th ...

  8. Regular Expressions in Grep Command with 10 Examples --reference

    Regular expressions are used to search and manipulate the text, based on the patterns. Most of the L ...

  9. Introducing Regular Expressions 学习笔记

    Introducing Regular Expressions 读书笔记 工具: regexbuddy:http://download.csdn.net/tag/regexbuddy%E7%A0%B4 ...

随机推荐

  1. [HAOI2007]理想的正方形 BZOJ1047 二维RMQ

    题目描述 有一个a*b的整数组成的矩阵,现请你从中找出一个n*n的正方形区域,使得该区域所有数中的最大值和最小值的差最小. 输入输出格式 输入格式: 第一行为3个整数,分别表示a,b,n的值 第二行至 ...

  2. AF 与 PF区别

    AF 表示ADDRESS FAMILY 地址族 PF 表示PROTOCL FAMILY 协议族 Winsock2.h中#define AF_INET 0#define PF_INET AF_INET ...

  3. js innerText、textContent、innerHTML的区别和各自用法

    //自定义函数 function my$(id) { return document.getElementById(id); } //点击按钮设置div中的文本内容 my$("btn&quo ...

  4. 【语义分割】PSPNet中PSP模块的pytorch实现

    github地址:https://github.com/Lextal/pspnet-pytorch/blob/master/pspnet.py PSP模块示意图如下 代码如下 class PSPMod ...

  5. GDI绘图写的简单扫雷

    由于没话多少时间,这个扫雷我只实现了主要功能(扫雷功能,递归实现) 废话不多说,直接上代码 using System; using System.Collections.Generic; using ...

  6. LeetCode记录之28——Implement strStr()

    Implement strStr(). Returns the index of the first occurrence of needle in haystack, or -1 if needle ...

  7. C# 由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值。这个错误是什么原因引起的?

    C# 由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值.这个错误是什么原因引起的? 2011-12-17 22:45 提问者: 匿名|浏览次数:6056次 我来帮他解答 图片 符号 ...

  8. C. Connect Three Round #528 (Div. 2)【曼哈顿距离】

    一.题面 题目链接 二.分析 这题的关键是要确定一个点是从三个点出发的交汇点,其他的只要结合曼哈顿距离的定义即可明白.因为是三个点,这个交汇点的坐标分别对应的就是x,y值的中值.然后一个小技巧就是曼哈 ...

  9. QDU_组队训练(AJFC)

    A - Pretty Matrix DreamGrid's birthday is coming. As his best friend, BaoBao is going to prepare a g ...

  10. HDU6393(LCA + RMQ + 树状数组) n边图,两点最短距离 , 修改边权

    这道题的进阶版本 进阶版本 题意: 一个n个点,n条边的图,2中操作,1是将某条边的权值更改,2是询问两点的最短距离. 题解: 由于n个点,n条边,所以是树加一个环,将环上的边随意取出一条,就是1颗树 ...