正则表达式

字符

语法

说明

表达式实例

匹配字符串

.

匹配任意字符,除了\n(换行符)

-

-

\

转义字符

-

-

特定字符

语法

说明

表达式实例

匹配字符串

\d

匹配任意数字,等价于 [0-9]

-

-

\D

匹配任意非数字

-

-

\s

匹配任意空白字符,等价于 [\t\n\r\f].

-

-

\S

匹配任意非空字符

-

-

\w

匹配字母数字及下划线

grep '\w' passwd

-

\W

匹配非字母数字及下划线

-

-

\z

匹配字符串结束

-

-

\G

匹配最后匹配完成的位置

-

-

\n

匹配一个换行符

-

-

\t

匹配一个制表符

-

-

\b

代表着单词的开头或结尾,也就是单词的分界处

-

-

例如him,history,high等等。用hi来查找的话,这里边的hi也会被找出来。如果要精确地查找hi这个单词的话,我们应该使用\bhi\b。

数量词

语法

说明

表达式实例

匹配字符串

*

匹配前一个字符 0 个或多个的表达式

-

-

+

匹配 1 个或多个的表达式

-

-

?

匹配 0 个或 1 个由前面的正则表达式定义的片段,非贪婪方式

-

-

{n}

精确匹配 n 个前面表达式

-

-

{n, m}

匹配 n 到 m 次由前面的正则表达式定义的片段,贪婪方式

-

-

.*

贪心算法,任意字符串

-

-

.*?

非贪心算法

-

-

  • 前面的字符或者子表达式要么匹配多次要么不匹配
# grep 'roo*' passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
chrony:x:998:996::/var/lib/chrony:/sbin/nologin
  • 前面的字符至少匹配一次
grep 'roo\+' passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin

边界匹配

语法

说明

表达式实例

匹配字符串

^

匹配字符串的开头

$

匹配字符串的末尾

\A

匹配字符串开始

-

-

\Z

匹配字符串结束,如果是存在换行,只匹配到换行前的结束字符串

-

-

空行的表示:^$

分组

语法

说明

表达式实例

匹配字符串

[...]

用来表示一组字符

-

-

( )

匹配括号内的表达式,也表示一个组

-

-

竖线

表示竖线两边任意匹配一个

-

-

范围内字符

数字字符:[0-9] 小写字符:[a-z] 大写字符:[A-Z] 反向字符[^0-9] 不包含

grep '[0-9]' passwd
grep '[123]' passwd
grep '[A-Z]' passwd

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Go 常见错误

    ":=" 是在声明和初始化变量,因此该变量必须是第一次出现, 声明和赋值必须是一气呵成的,不能写成先声明后赋值这种形式,这个必须在函数体内才行。

    羊羽shine
  • CSS定位

    特性: 1. 移动的出发点是自身标准流的位置 2. 相对定位移动的元素不会对别的元素产生干扰,“没有脱标”,真正占得位置还是标准流的位置(肉体不在 灵魂永驻...

    羊羽shine
  • Go基础——数据类型

    在上面的程序中,a 赋值为 true,b 赋值为 false。c 赋值为 a && b。仅当 a 和 b 都为 true 时,操作符 && 才返回 true。因...

    羊羽shine
  • PHP--正则表达式和样式匹配--小记

    POSIX 风格的,有些低版本软件支持,目前高版本的有些已经废弃不用了,比如 zend studio 的较新版本.

    书童小二
  • 正则表达式的使用

    preg_filter 执行正则表达式搜索和替换 preg_grep 返回匹配模式的数组条目 preg_last_error 返回最后一个正则...

    ianzhi
  • 正则表达式

    特殊符号(使用需要'\'转义) ! $ ^ * + = | . ? \ / ( ) [ ] { } 创建正则表达式 方法一  var re =new RegEx...

    小古哥
  • 还不会正则表达式?看这篇!

    正则表达式是很多程序员,甚至是一些有了多年经验的开发者薄弱的一项技能。大家都很多时候都会觉得正则表达式难记、难学、难用,但不可否认的是正则表达式是一项很重要的技...

    Nealyang
  • 正则表达式全部符号解释

    Text-to-speech function is limited to 200 characters

    botkenni
  • 正则表达式

    正则表达式 什么是正则表达式? 正则表达式,又称规则表达式,英文名为Regular Expression,在代码中常简写为regex、regexp或RE,是计算...

    新人小试
  • 正则表达式全部符号解释

    Jackson0714

扫码关注云+社区

领取腾讯云代金券