shell基本正则表达式
- 星号* 匹配它前面的字符串或正则表达式任意次(包括0次)。比如,“1122*” 将匹配11+1个或多个2,其可能匹配的字符串将是112、1122、112222、11223343等
- 句点. 匹配除换行符之外的任意一个字符。比如,“112.”将匹配112+至少一个字符,其可能匹配的字符串是1121、122、112abc等,但不匹配112。
- 插入符号^ 匹配一行的开始,但有时依赖于上下文环境,可能表示否定正则表达式中一个字符串的意思。比如,"^abc”将只匹配行首的abc字符串。
- 美元符$ 在一个正则表达式的末尾,匹配一行的结尾。比如,"123$"将只匹配行尾的123,"^$"将匹配一个空行。
- 方括号[] 匹配方括号内指定的字符集中的一个字符。比如,"[abc]"将匹配字符a、b、c中的任意一个字符,"[a-h]"将匹配从a~h的任意一个字符,"[A-Z][a-z]"将匹配任意一个大写或者小写字母,"[^a-d]"将匹配除a~d之外的所有字符。
- 反斜线符号\ 转义一个特殊的字符,使这个字符得到字面意义的解释。比如,"\$"将表示回他的原意"$",而不是表示行尾的正则表达式含义。类似地,"\\"表示的字意识"\"
- 转义尖括号\<\> 用于标记单词边界。尖括号必须是转义的,否则它们只有字符的字母含义。比如, "\<the\>"匹配单词"the",但不匹配“them”、“there”、“other”等等。
扩展正则表达式
- 问号? 匹配0个或1个前面的字符,它通常用于匹配单个字符。比如,"ab?c" 将匹配"ac"或者"abc"
- 加号+ 匹配1个或者多个前面的字符,它和*的作用相似,但它不匹配0个字符的情况。比如,"ab+c"将匹配"abc"、"abbc"、“abbbbc”等
- 转义波形括号\{\} 指示匹配前面正则表达式的次数。波形括号必须是转义的,否则它们只有字符的字面含义。比如"[0-9]\{5\}" 将匹配5位数字。
- 圆括号() 包含一组正则表达式。它们与下面要讲的"|", 或是在使用expr提取字符串时使用。
- 竖线| 正则表达式的“或”操作符匹配一组可用的字符。比如"a(b|c)d"将匹配"abd"或"acd"。
|
POSIX字符
|
含义
|
|
[:alnum:]
|
匹配字母和数字字符。等同于A-Z,a-z,0-9
|
|
[:alpha:]
|
匹配字母字符。等同于A-Z,a-z
|
|
[:blank:]
|
匹配空格或者制表符
|
|
[:cntrl:]
|
匹配控制字符
|
|
[:digit:]
|
匹配十进制数字。等同于0-9
|
|
[:graph:]
|
匹配ASCII码值在33-126的字符,与下面的[:print:]相似,但不包括空格字符
|
|
[:lower:]
|
匹配小写字母。等同于a-z
|
|
[:upper:]
|
匹配大写字母。等同于A-Z
|
|
[:print:]
|
匹配ASCII码值在32-126的字符,与下面的[:graph:]相似,但多了个空格字符
|
|
[:space:]
|
匹配空白字符(空格和水平制表符)
|
|
[:xdigit:]
|
匹配十六进制数字。等同于0-9,A-F,a-f
|
shell基本正则表达式的更多相关文章
- Shell 编程 正则表达式
本篇主要写一些shell脚本正则表达式的使用基础. 概述 正则表达式分为基础正则表达式(Regular Expression)与扩展正则表达式(Extended Regular Expression) ...
- shell 的 正则表达式
shell的正则表达式规则 https://www.jb51.net/tools/shell_regex.html 常规字符 字符 描述 \ 将下一个字符标记为一个特殊字符.或一个原义字符.例如,“n ...
- Unix Shell 程序设计 —— 正则表达式
参考:http://www.cnblogs.com/erichhuang/archive/2012/03/13/2394119.html 简介: 简单的说,正则表达式是一种可以用于模式匹配和替换的强有 ...
- [shell编程]正则表达式
如果在shell脚本中处理数据文件,那么我们就必须熟悉正则表达式.正则表达式是用来过滤数据流中文本的模式模板,模式由标准文本字符和特殊字符组成.正则表达式用特殊字符来匹配一系列一个或多个字符,要想掌握 ...
- shell:正则表达式和文本处理器
1.什么是正则 正则就是用一些具有特殊含义的符号组合到一起(称为正则表达式)来描述字符或者字符串的方法.或者说:正则就是用来描述一类事物的规则. 生活中处处都是正则: 比如我们描述:4条腿 你可能会想 ...
- Shell 与正则表达式part1
1.什么是shell? shell代表两个层面的意思,一个是命令解释器,比如:BASH,另外一个是shell脚本(利用shell的功能所写的一个程序,这个程序是使用纯文本文件,将一些shell的语法与 ...
- shell的正则表达式
正则表达式处理文件的内容,shell处理文件本身 grep *匹配0到n个 .(点儿)能匹配任意字符----8.8.8.8用于测试外网是否通畅 egrep
- Shell基本正则表达式和扩展正则表达式
BRE和ERE的区别 基本正则表达式(BRE)和扩展正则表达式(ERE)的区别仅仅是元字符(meta charactor)的区别而已. BRE: 只有^$.*[]是元字符 ERE: ^$.[]*+() ...
- linux笔记:shell编程-正则表达式
正则表达式与通配符(正则表达式匹配字符串,是包含匹配:通配符匹配文件名,是完全匹配.): 基础正则表达式: 正则表达式示例:
- bash shell学习-正则表达式基础 (笔记)
A gentleman is open-minded and optimistic; a small person is narrow-minded and pessimistic. "君子 ...
随机推荐
- RocketMQ系列(一)基本概念
RocketMQ是阿里出品的一款开源的消息中间件,让其声名大噪的就是它的事务消息的功能.在企业中,消息中间件选择使用RocketMQ的还是挺多的,这一系列的文章都是针对RocketMQ的,咱们先从Ro ...
- Java实现 LeetCode 815 公交路线(创建关系+BFS)
815. 公交路线 我们有一系列公交路线.每一条路线 routes[i] 上都有一辆公交车在上面循环行驶.例如,有一条路线 routes[0] = [1, 5, 7],表示第一辆 (下标为0) 公交车 ...
- Java实现 LeetCode 682 棒球比赛(暴力)
682. 棒球比赛 你现在是棒球比赛记录员. 给定一个字符串列表,每个字符串可以是以下四种类型之一: 1.整数(一轮的得分):直接表示您在本轮中获得的积分数. 2. "+"(一轮的 ...
- 如何获取CSDN的积分?
个人感觉就是写博客就给积分 具体给多少? CSDN应该有自己的积分规则 总之一句话:写博客涨积分
- Java实现 蓝桥杯VIP 算法训练 排列问题
算法训练 排列问题 时间限制:1.0s 内存限制:512.0MB 问题描述 求一个0-N-1的排列(即每个数只能出现一次),给出限制条件(一张N*N的表,第i行第j列的1或0,表示为j-1这个数不能出 ...
- java实现第七届蓝桥杯分小组
分小组 分小组 9名运动员参加比赛,需要分3组进行预赛. 有哪些分组的方案呢? 我们标记运动员为 A,B,C,... I 下面的程序列出了所有的分组方法. 该程序的正常输出为: ABC DEF GHI ...
- java实现第九届蓝桥杯三角形面积
三角形面积 小明最近在玩一款游戏.对游戏中的防御力很感兴趣. 我们认为直接影响防御的参数为"防御性能",记作d,而面板上有两个防御值A和B,与d成对数关系,A=2^d,B=3^d( ...
- shell中文本内容多行变一行的技巧
在linux下有时可能需要将多行的值转成一行.其实现的方法有很多种.笔者将自己曾经用过的方法在些分享. 如有一文本文件5201351.txt,文本的内容如下: 现我们可以通过如下方法将文本内容转成一行 ...
- python3 驱动自动安装脚本
from pywinauto.application import Applicationimport osimport timeos.system('start C:/Users/Administr ...
- 通过SecureCRT向远程Linux主机上传和下载文件
有时候直接在Linux服务器上通过 wget 或 curl 工具下截比较大的网络文件时会比较慢,这时我们通常会改用在Windows平台通过迅雷等更加现代化的下载功具下好目标文件(迅雷开会员才能更高速的 ...