详解Linux--shell脚本之正则表达式
发布时间 - 2026-01-10 22:31:55 点击率:次一、正则表达式的概念及特点:

正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。规定一些特殊语法表示字符类、数量限定符和位置关系,然后用这些特殊语法和普通字符一起表示一个模式,这就是正则表达式(Regular Expression)。
给定一个正则表达式和另一个字符串,我们可以达到如下的目的:
1. 给定的字符串是否符合正则表达式的过滤逻辑(称作“匹配”);
2. 可以通过正则表达式,从字符串中获取我们想要的特定部分。
正则表达式的特点:
1. 灵活性、逻辑性和功能性非常的强;
2. 可以迅速地用极简单的方式达到字符串的复杂控制。
3. 对于刚接触的人来说,比较晦涩难懂。
由于正则表达式主要应用对象是文本,因此它在各种文本编辑器场合都有应用,小到著名编辑器EditPlus,大到Microsoft Word、Visual Studio等大型编辑器,都可以使用正则表达式来处理文本内容。
二、正则表达式有三部分组成:
例如找出多有符合xxxxx@xxxx.xxx模式的字符串(也就是mail地址),要求x可以是字母、数字、下划线、小数点、短划线,email地址的每一部分可以有一个或多个x字符,例如abc@ed.com、1_2@789-6.54等,当然,符合这个模式的并不一定是合法的mail地址,但至少可以做一次初步的筛选,筛选掉类似于a.b、c@d等不符合的字符串。再比如说,找出所有符合yyy.yyy.yyy.yyy模式的字符串(IP地址),要求y是0~9的数字,IP地址的每一部分可以有1~3个y字符。
1、字符类
字符类(Character Class):上例中的x和y,他们在模式中表示一个字符,但是取值范围是一类字符中的任意一个。
eg:
2、数量限定符
数量限定符(Quantifier): 邮件地址的每一部分可以有一个或多个x字符,IP地址的每一部 分可以有1-3个y字符
eg:
3、位置限定符
位置限定符(Anchor):描述各种字符类以及普通字符之间的位置关系,例如邮件地址分三部分,用普通字符@和.隔 开,IP地址分四部分,用.隔开,每一部分都可以用字符类和数量限定符 描述。为了表示位置关系,需要位置限定符的概念,将在下面介绍。
eg:
4、特殊字符
eg:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# shell脚本正则表达式
# shell
# 正则表达式匹配
# 正则表达式
# shell 正则表达式详细整理
# Shell if中的正则表达式使用详解
# Shell脚本中通过正则表达式匹配IP地址
# Shell正则表达式验证IP地址
# linux shell 路径截取正则表达式
# PowerShell中正则表达式使用例子
# Shell正则表达式学习笔记
# Linux Shell脚本的编程之正则表达式
# shell高级学习之正则表达式
# shell编程入门之正则表达式实例代码
# 编辑器
# 多个
# 有一个
# 的人
# 都有
# 将在
# 这就是
# 可以用
# 下划线
# 我们可以
# 可以通过
# 可以使用
# 不符合
# 它在
# 类似于
# 大到
# 大家多多
# 小到
# 是否符合
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
活动邀请函制作网站有哪些,活动邀请函文案?
WordPress 子目录安装中正确处理脚本路径的完整指南
网站制作价目表怎么做,珍爱网婚介费用多少?
香港服务器WordPress建站指南:SEO优化与高效部署策略
消息称 OpenAI 正研发的神秘硬件设备或为智能笔,富士康代工
如何快速重置建站主机并恢复默认配置?
Laravel Octane如何提升性能_使用Laravel Octane加速你的应用
Laravel如何创建和注册中间件_Laravel中间件编写与应用流程
独立制作一个网站多少钱,建立网站需要花多少钱?
企业网站制作这些问题要关注
Laravel如何实现事件和监听器?(Event & Listener实战)
Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧
google浏览器怎么清理缓存_谷歌浏览器清除缓存加速详细步骤
如何在万网自助建站平台快速创建网站?
Android 常见的图片加载框架详细介绍
iOS验证手机号的正则表达式
如何快速选择适合个人网站的云服务器配置?
php中::能调用final静态方法吗_final修饰静态方法调用规则【解答】
Laravel如何升级到最新版本?(升级指南和步骤)
浅谈redis在项目中的应用
高端企业智能建站程序:SEO优化与响应式模板定制开发
如何正确选择百度移动适配建站域名?
如何快速生成ASP一键建站模板并优化安全性?
如何构建满足综合性能需求的优质建站方案?
zabbix利用python脚本发送报警邮件的方法
Laravel如何发送邮件_Laravel Mailables构建与发送邮件的简明教程
如何获取上海专业网站定制建站电话?
Laravel如何为API生成Swagger或OpenAPI文档
Laravel如何优雅地处理服务层_在Laravel中使用Service层和Repository层
Laravel Asset编译怎么配置_Laravel Vite前端构建工具使用
Laravel如何实现本地化和多语言支持?(i18n教程)
jQuery中的100个技巧汇总
如何在宝塔面板中修改默认建站目录?
html5audio标签播放结束怎么触发事件_onended回调方法【教程】
如何使用 jQuery 正确渲染 Instagram 风格的标签列表
🚀拖拽式CMS建站能否实现高效与个性化并存?
如何在自有机房高效搭建专业网站?
PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)
Python自动化办公教程_ExcelWordPDF批量处理案例
谷歌Google入口永久地址_Google搜索引擎官网首页永久入口
制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?
Laravel如何实现用户注册和登录?(Auth脚手架指南)
如何在香港免费服务器上快速搭建网站?
Laravel如何使用API Resources格式化JSON响应_Laravel数据资源封装与格式化输出
Java垃圾回收器的方法和原理总结
php 三元运算符实例详细介绍
EditPlus中的正则表达式实战(5)
海南网站制作公司有哪些,海口网是哪家的?
Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】
如何用免费手机建站系统零基础打造专业网站?
上一篇:拼多多商家版使用教程
上一篇:拼多多商家版使用教程

