千家信息网

linux当中的正则表达式的使用方法

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,正则表达式在linux当中我们去使用shell脚本的时候经常会用到正则表达式,所以整理一些我们会用到的表达式,以便提升shell脚本能力一、正则表达式(1)通过grep命令实践正则表达式比如我们去过滤
千家信息网最后更新 2026年11月03日linux当中的正则表达式的使用方法

正则表达式在linux当中我们去使用shell脚本的时候经常会用到正则表达式,所以整理一些我们会用到的表达式,以便提升shell脚本能力

一、正则表达式(1)
通过grep命令实践正则表达式
比如我们去过滤带有bbb字段的行,直接可以通过grep "xx" file去获取到

[root@zhaocheng ~]# cat test1aaa bbb ooocccc dddd eeeefffff ggggg hhhhh bbbbbkkkkk pppppp ssssss xxxxxx   mmmmmmmm[root@zhaocheng ~]# grep "bbb" test1aaa bbb ooofffff ggggg hhhhh bbbbb

比如去过滤出以aaa开头的行,我们就需要使用^去匹配了,^表示固定行首
引号加不加都可以

[root@zhaocheng ~]# grep "^aaa" test1aaa bbb ooo[root@zhaocheng ~]# grep '^aaa' test1aaa bbb ooo[root@zhaocheng ~]# grep ^aaa test1aaa bbb ooo

^是匹配行首,而$是匹配行尾,可以试一下,引号也可以不加

[root@zhaocheng ~]# grep mm$ test1kkkkk pppppp ssssss xxxxxx   mmmmmmmm[root@zhaocheng ~]# grep 'mm$' test1kkkkk pppppp ssssss xxxxxx   mmmmmmmm[root@zhaocheng ~]# grep "mm$" test1kkkkk pppppp ssssss xxxxxx   mmmmmmmm

比如匹配一个单词,直接可以使用^xx$也就是匹配行首与行尾,grep -n 顺便输出行号,--color颜色

[root@zhaocheng ~]# grep ^today$ test1today[root@zhaocheng ~]# grep -n --color ^today$ test11:today[root@zhaocheng ~]# grep -n  ^today$ test11:today

那么^$是空行的意思,匹配空行,在第四行输出一个空格,使用^$也能匹配到

[root@zhaocheng ~]# grep ^$ test1[root@zhaocheng ~]# grep -n ^$ test14:

在grep中去匹配一个词的词首或者词尾

[root@zhaocheng ~]# grep "\" test1beijinG[root@zhaocheng ~]# grep "\" test1beijinG

也可以固定词首与词尾

[root@zhaocheng ~]# grep -n --color "\" test16:Beijing is beijin ya

除了\<固定词首还可以使用\b也可以规定词首
除了\>固定词尾还可以使用\b也可以固定词尾

[root@zhaocheng ~]# grep -n --color "\bccc" test15:cccc dddd eeee[root@zhaocheng ~]# grep -n --color "eee\b" test15:cccc dddd eeee[root@zhaocheng ~]# grep -n --color "\beeee\b" test15:cccc dddd eeee

这个b还有一个兄弟B,这个属于是匹配"非单词边界的"
可以看出匹配第一个bb的时候是除了bb开头之外的词首都匹配到了
下面的匹配除了匹配到bbb开头的词首其他的都去匹配

[root@zhaocheng ~]# grep -n --color "\Bbb" test12:aaa bbb ooo7:fffff ggggg hhhhh bbbbb[root@zhaocheng ~]# grep -n --color "\Bbbb" test17:fffff ggggg hhhhh bbbbb

小结:
^:表示固定行首,词字符后面任意内容必须出现在行首,才能匹配
$:表示固定行尾,词字符前面的任意内容必须出现在行尾,才能匹配
^$:表示匹配空行,这里所描述的空行表示'回车',而空格或tab,等都不能算作此处所描述的空行
^abc$:表示abc独占一行时,会被匹配到
\<或者\b:匹配单词边界,表示固定词首,其后面的字符必须作为单词首部出现
\>或者\b:匹配单词边界,表示固定词尾,其前面的字符必须作为单词尾部出现
\B:匹配非单词边界,与\b相反

二、正则表达式(2)
找出文本中有哪几行包含两个连续的字母image
比如找出yaml文件中有哪些以image开头的单词

[root@zhaocheng files]# grep -n "image" coredns.yaml 111:        image: zhaocheng172/coredns:1.2.2112:        imagePullPolicy: IfNotPresent

如果一个文本中有很多的单词,但是只想去匹配单词中相同的字段的含有两个连续的

[root@zhaocheng ~]# grep -n "b\{2\}" test34:bb6:bbb[root@zhaocheng ~]# grep -n "a\{2\}"  test31:aa3:aaa a a aa8:aaiip9:aallo aahuy


匹配次数的正则符号 , 这个我们经常会用到,匹配任意字符的时候
表示匹配任意长度的任意字符
但是在正则表达式中,表示之前的字符连续出现任意次数(包括0次)
比如匹配a
p也就是a可以出现任意次,但是后面必须有p跟着

[root@zhaocheng ~]# grep -n "a*p" test37:appaly aoopa8:aaiip

*匹配o也就是o之后的任意字符**

[root@zhaocheng ~]# grep -n --color "o*" test21:aaa#bbb#ooo2:cccc#dddd#eeee3:fffff#ggggg#hhhhh4:kkkkk#pppppp#ssssss

在通配符中表示任意长度字符,在正则表达式中而用.来匹配

[root@zhaocheng ~]# grep -n --color "o.*" test11:today2:aaa bbb ooo

正则表达式中的.代表后任意一个单个字符,..就是任意两个字符都会匹配到

[root@zhaocheng ~]# grep -n "y." test6:sync:x:5:0:sync:/sbin:/bin/sync[root@zhaocheng ~]# grep -n "y.." test6:sync:x:5:0:sync:/sbin:/bin/sync[root@zhaocheng ~]# grep -n "y..." test6:sync:x:5:0:sync:/sbin:/bin/sync

三、正则表达式(3)常用符号
[[:alpha:]]是匹配所有任意字母带字母的

[root@zhaocheng ~]# grep "[[:alpha:]]" test4aa9oafghj9ghabcdaBDcabdDa124a1a4a%

前面加个a也就是一个带字母的,默认

[root@zhaocheng ~]# grep "a[[:alpha:]]" test4afghj9ghabcdaBDcabdD

也就是匹配a后面三个带字母的

[root@zhaocheng ~]# grep "a[[:alpha:]]\{3\}" test4afghj9ghabcdaBDcabdD

匹配a后面2个带字母的

[root@zhaocheng ~]# grep "a[[:alpha:]]\{2\}" test4afghj9ghabcdaBDcabdD

比如三个字符都必须是小写的话
可以使用[[:lower:]] 表示任意小写字母

[root@zhaocheng ~]# grep "a[[:lower:]]" test4afghj9ghabcdabdD[root@zhaocheng ~]# grep "a[[:lower:]]\{2\}" test4afghj9ghabcdabdD


也可以使用表示任意大写字母

[[:upper:]][root@zhaocheng ~]# grep "a[[:upper:]]\{1\}" test4aBDc[root@zhaocheng ~]# grep "a[[:upper:]]\{2\}" test4aBDc

常用符号
[[:alpha:]] 表示任意大小写字母
[[:lower:]] 表示任意小写字母
[[:upper:]] 表示任意大写字母
[[:digit:]] 表示0-9之间的任意单个数字(包括0和9)
[[:alnum:]] 表示任意数字或字母
[[:space:]] 表示任意空白字符,包括空格,tab健
[[:punct:]] 表示任意标点符号

除了[[:lower:]]可以代表小写字母,另外一个"[a-z]"也可以表示任意一个小写字母,[[:lower:]]和[a-z]是一样的

[root@zhaocheng ~]# grep "[a-z]" test4aa9oafghj9ghabcdaBDcabdDa124a1a4a%[root@zhaocheng ~]# grep "[[:lower:]]" test4aa9oafghj9ghabcdaBDcabdDa124a1a4a%

同理大写[A-Z]和[[:upper:]]也是一样的

[root@zhaocheng ~]# grep "[A-Z]" test4aBDcabdD[root@zhaocheng ~]# grep "[[:upper:]]" test4aBDcabdD


使用两种方法来过滤出a字母之后2个的字符
[[:lower:]]小写
[[:upper:]] 大写

[root@zhaocheng ~]# grep "a[a-z]\{2\}" test4afghj9ghabcdapoooaiuhhabdD[root@zhaocheng ~]# grep "a[[:lower:]]\{2\}" test4afghj9ghabcdapoooaiuhhabdD[root@zhaocheng ~]# grep "a[A-Z]\{2\}" test4aBDc[root@zhaocheng ~]# grep "a[[:upper:]]\{2\}" test4aBDc

另外还有一个任意字符也就是[[:alpha:]]它和[a-zA-Z]意思一样

[root@zhaocheng ~]# grep "[[:alpha:]]" test4aa9oafghj9ghabcdapoooaiuhhaBDcabdDa124a1a4a%[root@zhaocheng ~]# grep "[a-zA-Z]" test4aa9oafghj9ghabcdapoooaiuhhaBDcabdDa124a1a4a%


同理[0-9]和[[:digit:]]等效,都表示0-9之间任意单个数字

[root@zhaocheng ~]# grep "[[:digit:]]" test4a9oafghj9gha124a1a4[root@zhaocheng ~]# grep "[0-9]" test4a9oafghj9gha124a1a4


这个中间的[a-z]也就是所有的小写字母,也可以匹配相关字符

[root@zhaocheng ~]# grep "b[ad]" test5babd

也可以匹配特殊字符,[ ]表示匹配指定范围内的任意单个字符

[root@zhaocheng ~]# grep "b[cP@*&]" test5bcbPb&b*b@

过滤除了这些符号之外的字符

[root@zhaocheng ~]# grep "b[^cP@*&]" test5babdbfbg

使用[^a-z]排除这个以外的字符

[root@zhaocheng ~]# grep "b[^A-Z]" test5babcbdbfbgb&b*b@[root@zhaocheng ~]# grep "b[^a-z]" test5bPb&b*b@

同理
[^a-z]表示非小写字母的单个字符可以被匹配到
[^A-Z]表示非大写字母的单个字符可以被匹配到
[^a-zA-Z]表示非字母的单个字符可以被匹配到,比如数字或符号
[^a-zA-Z0-9]表示非字母、非数字的单个字符可以被匹配到,比如符号

前面试到[a-z]和[[:lower:]]等效那么在^中也是等效的

[root@zhaocheng ~]# grep "b[^[:lower:]]" test5bPb&b*b@

也就是[^0-9]和[^[:digit:]]等效
[^a-z]和[^[:lower:]等效
[^A-Z]和[^[:upper:]]等效
[^a-zA-Z]和[^[:alpha:]等效
[^a-zA-Z0-9]和[^[:alnum:]等效

除了[0-9], [[:digit:]]可以表示数字,而且还可以使用\d来表示数字

[root@zhaocheng ~]# grep -P "b\d" test5b3b4b5


显示任意单个非数字字符

[root@zhaocheng ~]# grep -P "b\D" test5babcbdbfbgbPb&b*b@

\d表示任意单个0-9的数字
\D表示任意单个非数字字符
\t表示匹配单个横向制表符(相当于一个tab健)
\s表示匹配单个空白字符,包括空格,tab制表符等
\S表示匹配单个非空白字符

四、正则表达式 转义符

常用符号"\",转义符
之前我们用到了.正则代表匹配后面任意字符,但是如果这个文本中就有这个点,直接匹配的话,也会匹配到其他的,这里我们就需要使用转义符\来匹配

[root@zhaocheng ~]# grep "a.." test4a9oafghj9ghabcdapoooaiuhhaBDcabdDa124a1a4a..[root@zhaocheng ~]# grep "a\.\." test4a..

如果想匹配反斜杠本身的话
可以使用''单引号来进行匹配,'\'匹配一个

[root@zhaocheng ~]# grep 'a\\' test4a\\\[root@zhaocheng ~]# grep 'a\\\\' test4a\\\[root@zhaocheng ~]# grep 'a\\\\\\' test4a\\\

五、正则表达式小结

#################常用符号#################
. 表示任意单个字符。

  • 表示前面的字符连续出现任意次,包括0次。
    . 表示任意长度的任意字符,与通配符中的的意思相同。
    \ 表示转义符,当与正则表达式中的符号结合时表示符号本身。
    [ ]表示匹配指定范围内的任意单个字符。
    [^ ]表示匹配指定范围外的任意单个字符。

#################单个字符匹配相关#################
[[:alpha:]] 表示任意大小写字母。
[[:lower:]] 表示任意小写字母。
[[:upper:]] 表示任意大写字母。
[[:digit:]] 表示0到9之间的任意单个数字(包括0和9)。
[[:alnum:]] 表示任意数字或字母。
[[:space:]] 表示任意空白字符,包括"空格"、"tab键"等。
[[:punct:]] 表示任意标点符号。
[^[:alpha:]] 表示单个非字母字符。
[^[:lower:]] 表示单个非小写字母字符。
[^[:upper:]] 表示单个非大写字母字符。
[^[:digit:]] 表示单个非数字字符。
[^[:alnum:]] 表示单个非数字非字母字符。
[^[:space:]] 表示单个非空白字符。
[^[:punct:]] 表示单个非标点符号字符。
[0-9]与[[:digit:]]等效。
[a-z]与[[:lower:]]等效。
[A-Z]与[[:upper:]]等效。
[a-zA-Z]与[[:alpha:]]等效。
[a-zA-Z0-9]与[[:alnum:]]等效。
[^0-9]与[^[:digit:]]等效。
[^a-z]与[^[:lower:]]等效。
[^A-Z]与[^[:upper:]]等效
[^a-zA-Z]与[^[:alpha:]]等效
[^a-zA-Z0-9]与[^[:alnum:]]等效
#简短格式并非所有正则表达式解析器都可以识别。
\d 表示任意单个0到9的数字。
\D 表示任意单个非数字字符。
\t 表示匹配单个横向制表符(相当于一个tab键)。
\s表示匹配单个空白字符,包括"空格","tab制表符"等。
\S表示匹配单个非空白字符。

#################次数匹配相关#################
\? 表示匹配其前面的字符0或1次
+ 表示匹配其前面的字符至少1次,或者连续多次,连续次数上不封顶。
{n} 表示前面的字符连续出现n次,将会被匹配到。
{x,y} 表示之前的字符至少连续出现x次,最多连续出现y次,都能被匹配到,换句话说,只要之前的字符连续出现的次数在x与y之间,即可被匹配到。
{,n} 表示之前的字符连续出现至多n次,最少0次,都会陪匹配到。
{n,}表示之前的字符连续出现至少n次,才会被匹配到。

#################位置边界匹配相关#################
^:表示锚定行首,此字符后面的任意内容必须出现在行首,才能匹配。
$:表示锚定行尾,此字符前面的任意内容必须出现在行尾,才能匹配。
^$:表示匹配空行,这里所描述的空行表示"回车",而"空格"或"tab"等都不能算作此处所描述的空行。
^abc$:表示abc独占一行时,会被匹配到。
\<或者\b :匹配单词边界,表示锚定词首,其后面的字符必须作为单词首部出现。
\>或者\b :匹配单词边界,表示锚定词尾,其前面的字符必须作为单词尾部出现。
\B:匹配非单词边界,与\b正好相反。

#################分组与后向引用#################
( ) 表示分组,我们可以将其中的内容当做一个整体,分组可以嵌套。
(ab) 表示将ab当做一个整体去处理。
\1 表示引用整个表达式中第1个分组中的正则匹配到的结果。
\2 表示引用整个表达式中第2个分组中的正则匹配到的结果。

[root@zhaocheng ~]# cat shengri.txt 小卡  19901119小红  19920105小里  19930211小会  19940325小黑  19950418匹配1993开头的
[root@zhaocheng ~]# grep "\b1993[0-9]\{4\}\b" shengri.txt 小里  19930211

这里意思\<1992,\b1992都是固定词首,[[:digit:]]和[0-9]都可以表示数字,{4}后面4个的字母结尾\>,\b都是固定词尾

[root@zhaocheng ~]# grep "\<1992[[:digit:]]\{4\}\>" shengri.txt 小红  19920105[root@zhaocheng ~]# grep "\<1992[[:digit:]]\{4\}\b" shengri.txt 小红  19920105[root@zhaocheng ~]# grep "\b1992[[:digit:]]\{4\}\b" shengri.txt 小红  19920105[root@zhaocheng ~]# grep "\b1992[[:digit:]]\{4\}\>" shengri.txt 小红  19920105

六、扩展正则表达式

不管是在基本正则表达式中还是扩展正则表达式中,有的通用的符号所表达的意思是相同的
. 表示任意单个字符。

  • 表示前面的字符连续出现任意次,包括0次。
    . 表示任意长度的任意字符,与通配符中的的意思相同。
    \ 表示转义符,当与正则表达式中的符号结合时表示符号本身。
    [ ]表示匹配指定范围内的任意单个字符。
    [^ ]表示匹配指定范围外的任意单个字符。

[[:alpha:]] 表示任意大小写字母。
[[:lower:]] 表示任意小写字母。
[[:upper:]] 表示任意大写字母。
[[:digit:]] 表示0到9之间的任意单个数字(包括0和9)。
[[:alnum:]] 表示任意数字或字母。
[[:space:]] 表示任意空白字符,包括"空格"、"tab键"等。
[[:punct:]] 表示任意标点符号。
[^[:alpha:]] 表示单个非字母字符。
[^[:lower:]] 表示单个非小写字母字符。
[^[:upper:]] 表示单个非大写字母字符。
[^[:digit:]] 表示单个非数字字符。
[^[:alnum:]] 表示单个非数字非字母字符。
[^[:space:]] 表示单个非空白字符。
[^[:punct:]] 表示单个非标点符号字符。
[0-9]与[[:digit:]]等效。
[a-z]与[[:lower:]]等效。
[A-Z]与[[:upper:]]等效。
[a-zA-Z]与[[:alpha:]]等效。
[a-zA-Z0-9]与[[:alnum:]]等效。
[^0-9]与[^[:digit:]]等效。
[^a-z]与[^[:lower:]]等效。
[^A-Z]与[^[:upper:]]等效
[^a-zA-Z]与[^[:alpha:]]等效
[^a-zA-Z0-9]与[^[:alnum:]]等效

^:表示锚定行首,此字符后面的任意内容必须出现在行首,才能匹配。
$:表示锚定行尾,此字符前面的任意内容必须出现在行尾,才能匹配。
^$:表示匹配空行,这里所描述的空行表示"回车",而"空格"或"tab"等都不能算作此处所描述的空行。
^abc$:表示abc独占一行时,会被匹配到。
\<或者\b :匹配单词边界,表示锚定词首,其后面的字符必须作为单词首部出现。
\>或者\b :匹配单词边界,表示锚定词尾,其前面的字符必须作为单词尾部出现。
\B:匹配非单词边界,与\b正好相反。

grep命令默认只支持基本正则表达式,如果想让grep支持扩展正则表达式,则需要使用-E选项,不过这些70%都是通用的符号,查看效果

[root@zhaocheng ~]# grep "b[a-z]" test5babcbd[root@zhaocheng ~]# egrep "b[a-z]" test5babcbd[root@zhaocheng ~]# grep -E "b[a-z]" test5babcbd

另外的30%的与基本正则表达式相比,稍微不同一些,不过看起来比正则还要好理解
在正则表达式中{n}表示前面的字符连续出现n次,将会被匹配到
在扩展正则表达式中,{n}表示前面的字符连续出现n次,将会匹配到

在基本正则表达式中,( )表示分组,(ab)表示将ab当作一个整体去处理
在扩展正则表达式中,( )表示分组,(ab)表示将ab当作一个整体去处理

在扩展正则表达式中:
()表示分组
(ab) 表示将ab当作一个整体去处理
\1 表示引用整个表达式中第一个分组的正则匹配到的结果
\2 表示引用整个表达式中第二个分组的正则匹配到的结果
? 表示匹配其前面的字符0或1次

  • 表示匹配其前面的字符至少1次,或者连续多次,连续次数上不封顶
    {n} 表示前面的字符连续出现n次,将会匹配到
    {x,y}表示之前的字符至少连续出现x次,最多连续出现y次,都能匹配到
    {,n} 表示之前的字符连续出现至多n次,最少0次,都会匹配到
    {n,}表示之前的字符连续出现至少n次,才会匹配到

在扩展表达式中,还有一个比较常用的符号,是基本正则表达式中没有的,它就是"|"

它的意思是表示或

[root@zhaocheng ~]# cat test6kubernetes.comjenkins.comrabbitmq.comzookpeer.comspring boot.comdubbo.eduspring cloud.nethelm.org

找出以.net结尾的行,xxx$以什么为结尾

[root@zhaocheng ~]# grep "net$" test6spring cloud.net[root@zhaocheng ~]# egrep "net$" test6spring cloud.net[root@zhaocheng ~]# grep -E "net$" test6spring cloud.net

比如找出以com,net一样结尾的行就可以使用"|",可以使用egrep或者grep -E,()表示将括号内的内容看作一个整体,

[root@zhaocheng ~]# egrep "(com|net)$" test6kubernetes.comjenkins.comrabbitmq.comzookpeer.comspring boot.comspring cloud.net[root@zhaocheng ~]# grep -E "(com|net)$" test6kubernetes.comjenkins.comrabbitmq.comzookpeer.comspring boot.comspring cloud.net

也可以这么写,不过没有(com|net)$精确,$这个是以什么结尾

[root@zhaocheng ~]# grep -E "com|net" test6kubernetes.comjenkins.comrabbitmq.comzookpeer.comspring boot.comspring cloud.net

常用扩展表达式小结
常用符号
. 表示任意单个字符。

  • 表示前面的字符连续出现任意次,包括0次。
    . 表示任意长度的任意字符,与通配符中的的意思相同。
    \ 表示转义符,当与正则表达式中的符号结合时表示符号本身。
    | 表示"或者"之意
    [ ]表示匹配指定范围内的任意单个字符。
    [^ ]表示匹配指定范围外的任意单个字符。

单个字符匹配相关
[[:alpha:]] 表示任意大小写字母。
[[:lower:]] 表示任意小写字母。
[[:upper:]] 表示任意大写字母。
[[:digit:]] 表示0到9之间的任意单个数字(包括0和9)。
[[:alnum:]] 表示任意数字或字母。
[[:space:]] 表示任意空白字符,包括"空格"、"tab键"等。
[[:punct:]] 表示任意标点符号。
[^[:alpha:]] 表示单个非字母字符。
[^[:lower:]] 表示单个非小写字母字符。
[^[:upper:]] 表示单个非大写字母字符。
[^[:digit:]] 表示单个非数字字符。
[^[:alnum:]] 表示单个非数字非字母字符。
[^[:space:]] 表示单个非空白字符。
[^[:punct:]] 表示单个非标点符号字符。
[0-9]与[[:digit:]]等效。
[a-z]与[[:lower:]]等效。
[A-Z]与[[:upper:]]等效。
[a-zA-Z]与[[:alpha:]]等效。
[a-zA-Z0-9]与[[:alnum:]]等效。
[^0-9]与[^[:digit:]]等效。
[^a-z]与[^[:lower:]]等效。
[^A-Z]与[^[:upper:]]等效
[^a-zA-Z]与[^[:alpha:]]等效
[^a-zA-Z0-9]与[^[:alnum:]]等效

次数匹配相关
? 表示匹配其前面的字符0或1次

  • 表示匹配其前面的字符至少1次,或者连续多次,连续次数上不封顶。
    {n} 表示前面的字符连续出现n次,将会被匹配到。
    {x,y} 表示之前的字符至少连续出现x次,最多连续出现y次,都能被匹配到,换句话说,只要之前的字符连续出现的次数在x与y之间,即可被匹配到。
    {,n} 表示之前的字符连续出现至多n次,最少0次,都会陪匹配到。
    {n,}表示之前的字符连续出现至少n次,才会被匹配到。

位置边界匹配相关
^:表示锚定行首,此字符后面的任意内容必须出现在行首,才能匹配。
$:表示锚定行尾,此字符前面的任意内容必须出现在行尾,才能匹配。
^$:表示匹配空行,这里所描述的空行表示"回车",而"空格"或"tab"等都不能算作此处所描述的空行。
^abc$:表示abc独占一行时,会被匹配到。
\<或者\b :匹配单词边界,表示锚定词首,其后面的字符必须作为单词首部出现。
\>或者\b :匹配单词边界,表示锚定词尾,其前面的字符必须作为单词尾部出现。
\B:匹配非单词边界,与\b正好相反。

分组与后向引用
( ) 表示分组,我们可以将其中的内容当做一个整体,分组可以嵌套。
(ab) 表示将ab当做一个整体去处理。
\1 表示引用整个表达式中第1个分组中的正则匹配到的结果。
\2 表示引用整个表达式中第2个分组中的正则匹配到的结果。

字符 单个 字母 正则 表达式 单词 符号 数字 边界 分组 小写 空行 内容 大写 空格 空白 大写字母 次数 词尾 在行 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 深圳九邦互联网科技有限公司 河南云网互联网络科技有限公司 北京路客互联网科技有限公司 互联网最新的科技有限公司 麻工互联网科技 安徽鑫晟辉互联网科技 极限挑战互联网科技 新浪科技互联网 哈尔滨新华互联网科技 阿里巴巴算科技企业还是互联网 成都互联网科技公司工作好不好 浙南科技城互联网大厦建设工程 互联网科技的全部知识 长沙茂晟互联网科技有限公司 合肥互联网科技公司公章图片 锡山区互联网智能科技产品供应 深圳无忧互联网科技 启辰互联网科技 平安好医生打造互联网科技医疗 科技互联网专业务虚会材料 北京路客互联网科技有限公司 互联网最新的科技 互联网品科技 友谊互联网络科技 互联网科技产品 互联网大会黑科技排名 世界互联网科技公司市值排名 杭州壁岐互联网科技有限公司 为客找房互联网科技公司怎么样 福州德业互联网科技
0