📜  如何在 Linux 上使用正则表达式 (RegEx)

📅  最后修改于: 2022-05-13 01:57:29.289000             🧑  作者: Mango

如何在 Linux 上使用正则表达式 (RegEx)

正则表达式是正则表达式的首字母缩写词。正则表达式特殊字符或字符集,帮助我们以搜索数据和匹配复杂模式。正则表达式最常与 Linux 命令一起使用:- grep、sed、tr、vi。

以下是一些基本的正则表达式:

Sr. no.Symbol Description
1..It is called a wild card character, It matches any one character other than the new line.
2.^It matches the start of the string.
3.$It matches the end of the string.
4.*It matches up to zero or more occurrences i.e. any number of times of the character of the string.
5.\It is used for escape following character.
6.()It is used to match or search for a set of regular expressions.
7.?It matches exactly one character in the string or stream.

下面是我们将要使用的文本文件的链接:

使用的文本文件: Fruits-name

1. 使用“.” (点)匹配字符串。

使用 ”。”我们可以发现一个字符串,如果我们不知道确切的字符串,或者我们只记得只有字符串,我们可以使用的开始和结束“”作为一个缺失的字符,它会填补那个缺失的字符。让我们看一个例子来更好地理解:'这个文件包含水果的名字,我们将在这个文件上使用正则表达式。



脚本:

输出:

输出 1。

2. 使用“^”(脱字符)匹配字符串的开头

使用“^”,我们可以找到所有以给定字符开头的字符串。让我们看一个例子以便更好地理解。在这里,我们试图找到所有以字母 B 开头的水果名称:

脚本:

输出:

输出 2。

3.使用“$”(美元符号)匹配字符串的结尾

使用“$”我们可以找到所有以给定字符结尾的字符串。让我们看一个例子以便更好地理解。在这里,我们试图找到所有以字母 e 结尾的水果名称:

脚本:

输出:

输出 3。

4. 使用“*”(星号)查找字符串的任意重复次数

使用“*”,我们可以匹配零个或多个字符串的字符。让我们看一个例子以便更好地理解。在这里,我们试图找到所有水果的名称

在其中一个接一个地出现一个或多个“ap”。

脚本:

输出:

输出 4。

5. 使用“\”(反斜杠)匹配特殊符号

使用带有特殊符号的“\”,如空格(“”)、换行符(“\n”),我们可以从文件中找到字符串。让我们看一个例子以便更好地理解。在这里,我们试图找到所有在全名中包含空格的水果名称。



脚本:

输出:

6. 使用“()”(大括号)匹配正则表达式组。

使用“()”,我们可以找到与“()”中的模式匹配的字符串。让我们看一个例子以便更好地理解。在这里,我们试图找到全名中有空格的所有水果名称。

脚本:

输出:

输出 6。

7. 使用“?”(问号)查找所有匹配的字符

使用“?”,我们可以匹配前面的 0 或 1 次重复。例如,如果我们做这样的事情:ab?它将匹配“a”或“ab”。让我们看另一个例子以便更好地理解。在这里,我们试图找到所有包含字符“Ch”的水果名称。

脚本:

输出:

注意: “<< //// ////”可用于多行注释。