文章目录

  • 一、什么是正则表达式
  • 二、正则表达式的使用

一、什么是正则表达式

正则表达式是由普通字符与元字符组成:

  • 普通字符 包括大小写字母、数字、标点符号及一些其他符号。

  • 元字符 是指在正则表达式中具有特殊意义的专用字符,可以用来规定其前导字符(即位于元字符前面的字符或表达式)在目标对象中的出现模式。

二、正则表达式的使用

适合awk,sed,grep,egrep等文本工具使用

常用选项:

选项 作用
\ 转义字符,用于取消特殊符号的含义,如:\!、\n、\$
^ 匹配字符串开始的位置,如:^a、^the、^#、^[a-z]
$ 匹配字符串结束的位置,如:word$、^$匹配空行
. 匹配除\n之外的任意的一个字符,如:go.d、g…d
* 匹配前面子表达式0次或多次,如:goo*d、go.*d
[list] 匹配list列表中的一个字符(列表中只要有一个符合即可)
[^list] 匹配任意非list列表中的一个字符
\ {n\ } 匹配前面的子表达式n次
\ {n,\ } 匹配前面的子表达式不少于n次
\ {n,m\ } 匹配前面的子表达式n到m次(m必须大于n,不然会报错)

注意:egrep、 awk使用{n}、{n,}、{n, m}匹配时 “{ }” 前不用加" \ "

选项 作用
\n 拥有换行的作用
\t 转化为制表符(能让输出结果呈现表格的格式)
\w(小写) 匹配包括下划线的任何单词字符
\W(大写) 匹配任何非单词字符。等通于"[^A-Za-z0-9_]"
\r 转换后是回车符
\d 匹配一个数字字符
\D 匹配一个非数字字符。等价于[^0-9]
\s(小写) 空白符
\S(大写) 非空白符

扩展正则表达式元字符:(支持的工具:egrep、awk)
+:匹配前面子表达式1次以上,如:go+d,将至少匹配一个o,god、good、goood
?:匹配前面子表达式0次或1次,如:go?d将匹配gd、god
():将括号中的字符串作为一个整体,如:g(oo)+d,将匹配oo整体1次以上,如good、goood等
|:以或的方式匹配字符串,如:g(oo|al)d,将匹配good或gald

示例一:
区号025开头,号码与区号间可以是空格、-、没有,号码必须是5或者8开头的八位数

示例二:
正则表达式匹配E-mail地址

shell脚本----正则表达式相关推荐

  1. Shell 脚本正则表达式(一)

    Shell 脚本正则表达式(一) 一.正则表达式概述 1.正则表达式定义 2.正则表达式用途 二.基础正则表达式 1.基础正则表达式常见元字符 2.基础正则表达式示例 三.扩展正则表达式 1.扩展正则 ...

  2. shell脚本——正则表达式(包含grep详细介绍及应用)

    正则表达式 正则表达式的作用 前言案例:使用^和$判断用户输入的是否是数字 基础正则表达式元字符 基础正则表达式元字符案例 扩展正则表达式元字符 扩展正则表达式元字符案例 正则表达式元字符综合案例 三 ...

  3. Shell 脚本--------正则表达式的认知

    正则表达式 正则表达式分为基础正则表达式与扩展正则表达式,它不是一个工具程序,而是一个字符串处理的标准依据,是使用单个字符串搜索.匹配一系列符合某个语法规则的字符串. 正则表达式的定义 正则表达式又称 ...

  4. shell脚本之正则表达式

    shell脚本正则表达式 一.正则表达 1.1 正则表达式定义 1.1.1正则表达式组成 1.1.2 作用 1.2 基础正则表达式元字符 二.正则表达式相关命令 2.1 grep命令 2.2 cut ...

  5. shell脚本详解(七)——正则表达式、sort、uniq、tr

    shell脚本详解(七)--正则表达式.sort.uniq.tr 一.排序命令--sort 1.格式 2.常用选项 3.示例 二.去除重复行操作命令--uniq 1.格式 2.常用选项 3.示例 三. ...

  6. Shell脚本之正则表达式以及文本编辑器

    目录 一.正则表达式 1.定义 2.元字符 元字符使用(这里举例为常用的元字符) 3.表示次数 (1)匹配字符 (2)查看子网掩码信息 4. 位置锚定 5.扩展正则表达式 (1)表示次数 (2)表示分 ...

  7. 详解Shell脚本:正则表达式

    正则表达式的概念 正则表达式:使用单个字符串来描述.匹配一系列符合某个句法规则的字符串 由普通字符与特殊字符组成,一般用在脚本编程.文本编辑器中,如php.python.she等,简写为regex.r ...

  8. 七:Shell脚本:正则表达式与文本处理器三剑客grep,egrep, sed,awk

    正则表达式定义 正则表达式,又称正规表达式.常规表达式 使用字符串来描述.匹配一系列符合某个规则的字符串 ●正则表达式组成 ◆普通字符 大小写字母.数字.标点符号及一些其他符号 ◆元字符 在正则表达式 ...

  9. shell脚本实操学习之函数、正则表达式

    shell脚本实操学习之函数.正则表达式 shell函数 函数介绍 函数语法 函数应用 正则表达式 正则表达式介绍 特殊字符 POSIX字符 shell函数 函数介绍 在写代码的时候,我们很多人习惯从 ...

最新文章

  1. 发布新模板-画情画心
  2. mysql 图形化工具
  3. Python学习—pyhton中的进程
  4. 白话Elasticsearch08-深度探秘搜索技术之基于boost的细粒度搜索条件权重控制
  5. websocket与ajax的区别浅析
  6. Android 系统(72)---Android系统增加字体库及修改系统默认字体
  7. (Deep learning)深度卷积网络实战——第一部分
  8. C++冒泡排序(包含初级、正宗及改进三种实现)
  9. 算法笔记_面试题_18.动态规划_模板及示例十几道(上)
  10. ❤100款程序员爱情❤520/表白/七夕情人节/求婚❤专用html5+css3+js 炫酷动画网页的源代码(建议收藏)
  11. FreeRTOS消息队列详解第一讲(全网最全)——消息队列概述
  12. Windows 7声卡驱动一键修复精灵3.0完美版(2009年11月9日发布)
  13. 终于!这个速算题自动批改程序被我给做出来了!
  14. 计算机系微电子专业大学排名,2021年微电子科学与工程专业大学排名
  15. 《平凡的世界》文摘----少安写给她妹妹的那封信...
  16. Flutter技术与实战(4)
  17. 【C++代码】约瑟夫环问题:0,1,……,n-1这n个数字排成一个圆圈,从数字0开始,每次从这个圆圈里删除第m个数字。求出这个圆圈里剩下的最后一个数字。
  18. 电路实验一阶电路误差分析_常见滤波电路分析技巧
  19. 混合竞价模式下,开发者如何制定价格策略?
  20. 点击BootStrap下拉框无反应

热门文章

  1. mlcc应用范围_什么是独石电容,MLCC电容有哪些特点、分类、作用以及应用
  2. 古典插画风格七夕情人节PPT模板
  3. Vue+Openlayer封装拾取坐标组件-LjOlPickCoordinate
  4. vue 画布插件_一个Vue.js插件,用于使用EaselJS控制HTML5画布
  5. Android没有报错,运行模拟器,提示停止运行,App根本打不开,下面是日志,烦请大佬们看看呐
  6. 企业移动应用平台---诺基亚S60模拟器下的测试
  7. 效果:mask-image 哔哩哔哩弹幕不遮挡人物
  8. 机器学习——聚类之k近邻算法及python使用
  9. 【WebLogic】记录一次WebLogic进程无法启动的故障排查过程
  10. angular使用bootstrap方法手动启动