一、基本正则表达式

字符匹配
. : 匹配任意单个字符
[] : 匹配中括号中的任意单个字符
[^] : 匹配指定范围外的任意单个字符
空白字符:[:space:]、数字:[:digit:]、小写字母:[:lower:]、大写字母:[:upper:]、大小写字母:[:alpha:]、字母和数字[:alnum:]、标点符号:[:punct:]
匹配次数
* : 匹配前面的字符任意次
\? : 匹配前面的字符0或1次
\+ : 匹配前面的字符至少1次
\{m\}: 匹配前面的字符m次
\{m,n\}: 匹配前面的字符至少m次,至多n次
\{0,n\}:匹配前面的字符至多n次
\{m,\}: 匹配前面的字符至少m次 位置锚定
^ : 行首锚定
$: 行尾锚定
^PATTERN$: 用于模式匹配整行
^$: 匹配空行
^[[:space:]*]$
\< 或 \b: 词首锚定
\> 或 \b: 词尾锚定
\<PATTERN\>: 匹配整个单词 分组:
\(\): 将一个或多个字符捆绑在一起,当做一个整体进行处理
\(xy\)*ab
Note:分组括号中的模式匹配到的内容会被正则表达式引擎记录于内部的变量中,这些变量的命名方式:\1 \2 \3
\1: 从左侧起,第一个左括号以及与之匹配右括号之间的模式所匹配到的字符

二、扩展的正则表达式

字符匹配:
. : 匹配任意单个字符
[] : 匹配括号内的任意单个字符
[^] : 匹配指定范围外的字符 次数匹配
* : 匹配前面的字符任意次
?: 匹配前面的字符的0或1次
+ : 匹配前面的字符至少1次
{m} : 匹配前面的字符m次
{m,n} : 匹配前面的字符至少m次,至多n次 位置锚定:
^ : 锚定行首
$ : 锚定行尾
\<, \b : 词首锚定
\>, \b : 词尾锚定 分组
()
后向引用: \1,\2,...

linux基础之正则表达式的更多相关文章

  1. (大数据工程师学习路径)第一步 Linux 基础入门----正则表达式基础

    介绍 虽然我们这一节的标题是正则表达式,但实际这一节只是介绍grep,sed,awk这三个命令,而正则表达式作为这三个命令的一种使用方式(命令输出中可以包含正则表达式).正则表达式本身的内容很多,要把 ...

  2. Linux基础之-正则表达式(grep,sed,awk)

    一. 正则表达式 正则表达式,又称规则表达式.(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表达式是对字符串操作的一种逻辑公 ...

  3. Linux基础-sed+正则表达式

    1,删除文件每行的第一个字符:sed -r 's/^.//g' passwd 2,删除文件每行的第二个字符:sed -r 's/^(.)(.)/\2/g' passwd 3,删除文件每行的最后一个字符 ...

  4. Linux基础篇,正则表达式

    一.正则表达式特殊符号: 二.grep的用法 grep [-A|B|a|c|i|n|v] [--color=auto] '搜索字串' filename -A ===> after缩写,后面接数字 ...

  5. 原来今天是感恩节-Linux基础继续&MySQL和PHP

    hi 原来今天是感恩节.虽然一直没有过这个节日的习惯,但仅仅是听到感恩的消息,都能想到一幅幅画面.愿大家安好! 下午开题会议还是有所收获,悄悄的,就变向那个不喜欢自己的人了. 一.Linux基础(二) ...

  6. Linux基础入门

    第一节,linux系统简介 一.实验内容 了解 Linux 的历史,Linux 与 Windows 的区别等入门知识. 二.实验要求 阅读linux简介与历史 三.实验步骤 (一).Linux 为何物 ...

  7. Linux基础与Linux下C语言编程基础

    Linux基础 1 Linux命令 如果使用GUI,Linux和Windows没有什么区别.Linux学习应用的一个特点是通过命令行进行使用. 登录Linux后,我们就可以在#或$符后面去输入命令,有 ...

  8. Linux基础入门学习笔记20135227黄晓妍

    学习计时:共24小时 读书:1小时 代码:8小时 作业:3小时 博客:12小时 一.学习目标 1. 能够独立安装Linux操作系统   2. 能够熟练使用Linux系统的基本命令   3. 熟练使用L ...

  9. Linux 基础入门----推荐课程

    Linux 基础入门课程:https://www.shiyanlou.com/courses/1 很好的一门Linux基础课,精炼.简洁!推荐! 课程内容: 第1节 Linux 系统简介 https: ...

随机推荐

  1. error_match问题

    当nginx的sendfile处于on的情况下,在docker的环境下修改js文件会出现error_match的问题,应该要在nginx的配置中把sendfile设为off

  2. 2 虚拟机Oracle11.2.0.4服务器端,第三方图形化界面安装步骤

    环境: 虚拟机:winserver 2012r2  数据中心版   64位 物理主机:win7 旗舰版 64位 网络环境:网线连接内网,WiFi外网 一.虚拟机相关设置 包括计算机名,与物理主机的网络 ...

  3. 【C++/函数】实验2

    1.实验内容 函数声明和函数定义: 形参和实参: 主调函数把实参的值传送给被调函数的形参从而实现主调函数向被调函数的数据传送. 形参:形式参数,表示主调函数与被调函数之间的联系.标识了在形参出现的位置 ...

  4. Coffee and Coursework (Easy version)

    Coffee and Coursework (Easy version) time limit per test 1 second memory limit per test 256 megabyte ...

  5. CEditUI 控件使用

    SetLimitText(UINT nMax )  //设置文本限制字符数 参数为nMax为控件可接受的文本最大字节数 GetTextLength() //获得文本长度 参考文档:http://www ...

  6. 带你开发一款给Apk中自动注入代码工具icodetools(完善篇)【申明:来源于网络】

    带你开发一款给Apk中自动注入代码工具icodetools(完善篇)[申明:来源于网络] 带你开发一款给Apk中自动注入代码工具icodetools(完善篇):http://blog.csdn.net ...

  7. Linux:使用rpcgen实现64位程序调用32位库函数

    摘要:本文介绍使用rpcgent实现64位程序调用32位库函数的方法,并给出样例代码. 我的问题 我的程序运行在64位Linux系统上,需要使用一个从外部获得的共享库中的函数,这个共享库是32位的,无 ...

  8. css 子盒子上下居中 文字溢出省略号

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. Elasticsearch学习笔记(二)Search API 与 Query DSL

    一. Search API eg: GET /mall/product/_search?q=name:productName&sort=price desc 特点:search的请求参数都是以 ...

  10. 原生ajax函数封装

    原生ajax函数 function ajax(json){ json=json || {}; if(!json.url){ return; } json.data=json.data || {}; j ...