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
谢谢,再见
相关推荐
Harvey9032 分钟前
通过 Helm 部署 Nginx 应用的完整标准化步骤
linux·运维·nginx·k8s
A星空1231 小时前
一、Linux嵌入式的I2C驱动开发
linux·c++·驱动开发·i2c
释怀不想释怀1 小时前
Linux环境变量
linux·运维·服务器
zzzsde1 小时前
【Linux】进程(4):进程优先级&&调度队列
linux·运维·服务器
凡人叶枫2 小时前
C++中智能指针详解(Linux实战版)| 彻底解决内存泄漏,新手也能吃透
java·linux·c语言·开发语言·c++·嵌入式开发
yuanmenghao2 小时前
Linux 性能实战 | 第 7 篇 CPU 核心负载与调度器概念
linux·网络·性能优化·unix
qq_297574672 小时前
Linux 服务器 Java 开发环境搭建保姆级教程
java·linux·服务器
70asunflower3 小时前
Emulation,Simulation,Virtualization,Imitation 的区别?
linux·docker
神梦流3 小时前
GE 引擎的内存优化终局:静态生命周期分析指导下的内存分配与复用策略
linux·运维·服务器
凡人叶枫3 小时前
C++中输入、输出和文件操作详解(Linux实战版)| 从基础到项目落地,避坑指南
linux·服务器·c语言·开发语言·c++