Shell三剑客:正则表达式简介

前言

一、名称解释

正则表达式(regular expression,RE)是一种字符模式,用于在查找过程中匹配指定的字符。在大多数程序里,正则表达式都被置于两个正斜杠之间;例如/l[oO]ve/就是由正斜杠界定的正则表达式,它将匹配被查找的行中任何位置出现的相同模式。在正则表达式中,元字符是最重要的概念,

二、工具

被vim、sed、awk、grep调用

三、场景

mysql、oracle、php、python、apache、nginx...需要正则

五、示例

需求:匹配数组的脚本:用户输入创建账号的数量

语法:[[ ^[0-9]+$ ]]

演示:

cs 复制代码
[root@localhost ~]# vim reg.sh    #脚本编辑
#!/bin/bash
#read -p "请输入数字才退出:" num

while :
do

read -p "请输入数字才退出:" num

if [[ $num =~ ^[0-9]+$ ]]
        then
                echo "谢谢,再见"
                exit 99

        else
                echo "重新输入"

fi
done

[root@localhost ~]# bash reg.sh     #执行脚本
请输入数字才退出:^H
重新输入
请输入数字才退出:jdf
重新输入
请输入数字才退出:df
重新输入
请输入数字才退出:3
谢谢,再见
相关推荐
DuHz9 小时前
C程序中的数组与指针共生关系
linux·c语言·开发语言·嵌入式硬件·算法
shuair9 小时前
mysql8支持远程访问 -mysql5.7支持远程访问
linux·mysql
Murphy_lx9 小时前
Linux系统--信号(4--信号捕捉、信号递达)陌生概念篇
linux·运维·服务器
焱焱枫10 小时前
Linux疑难杂症诊断利器:深入解析 fuser 命令
linux·运维·服务器
博语小屋10 小时前
Linux进程信号(壹)_产生信号
linux·运维·服务器
轻松Ai享生活11 小时前
【Linux】VFS 虚拟文件系统 详解
linux
LCG元11 小时前
Linux环境Python生态速建指南:包管理+虚拟隔离+深度调优
linux
大白的编程日记.11 小时前
【Linux学习笔记】线程同步与互斥之生产者消费者模型
linux·笔记·学习
Knight_AL11 小时前
Spring Boot 中使用自定义注解和 AOP 实现微服务日志记录(包含 URL、状态码和耗时信息)
linux·spring boot·微服务
养海绵宝宝的小蜗11 小时前
Linux 例行性工作任务(定时任务)知识点总结
linux·运维·服务器