前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >正则表达式

正则表达式

作者头像
羊羽shine
发布2019-06-02 12:54:10
7290
发布2019-06-02 12:54:10
举报
文章被收录于专栏:Golang开发Golang开发
字符

语法

说明

表达式实例

匹配字符串

.

匹配任意字符,除了\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
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.06.23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 字符
  • 特定字符
  • 数量词
  • 边界匹配
  • 分组
  • 范围内字符
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档