一、概述
1、正则表达式(Regular Expression,简称为RegExp或Regex)是一种用于描述、匹配和操作文本的字符串模式的表达式。它提供了一种强大而灵活的方式来进行字符串的搜索、替换、提取和验证操作。
2、正则表达式可以用于各种编程语言和应用程序中,包括文本编辑器、命令行工具、Web开发、数据处理等。它广泛应用于文本处理、表单验证、日志分析、数据提取等领域。
3、使用正则表达式,可以通过指定一种模式或规则来匹配目标字符串中的特定文本。模式由特定的字符、元字符以及量词等组成,用于描述匹配的规则。正则表达式可以用于查找某个特定的模式,也可以用于替换符合模式的文本,或者提取符合模式的部分内容。
4、例如,可以使用正则表达式来匹配电子邮件地址、检查密码强度、查找特定格式的日期、去除多余的空格等。
5、尽管正则表达式的语法有一定的学习曲线,但一旦掌握了基本的语法规则和常见的元字符,就可以利用正则表达式强大的匹配和操作功能来处理各种复杂的文本任务。
二、正则表达式的组成
1、正则表达式的组成
普通字符
大写A-Z
小写a-z
符号
元字符
2、正则表达式grep常见的选项
grep命令格式: grep [选项] "要查找的内容" 要查找的文件
grep -n 显示行号
grep -i 不区分大小写
grep -v 取反
grep -E 拓展查找内容
grep -q 静默执行 (可以看到命令执行成功了,但不输出内容)
3、 支持grep正则表达式的元字符
grep "^X" 显示以X开头的行
grep "x$" 查找以x结尾的行
grep ".x" 匹配任意单字符
grep ".*a" 匹配任意字符
grep "[a-a]" 匹配中括号中内容的范围
grep "[a-b]" 匹配开始和结束的内容
egrep {n,m} 重复前面的字符n-m次 (查找0-9的数字 重复1-3次)
grep "\" 转义符 (使正则表达式失去特殊含义)
如果这里不加\命令是查找0-9的数字查询1-3次
加了\后就变成查找0-9的数字查询1-3次,并且循环四次
egrep "x+x" 重复一次或多次前面的字符显示出来
egrep "?n" 显示当前字母前的一个字符
egrep "(a|b|c)" 或者的意思 显示多个字符