老男孩教育每日一题-2017年5月16日-说说{}与[]这两个符号有什么区别?

前端之家收集整理的这篇文章主要介绍了老男孩教育每日一题-2017年5月16日-说说{}与[]这两个符号有什么区别?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

1.题目

老男孩教育每日一题-2017年5月16日-说说{}与[]这两个符号有什么区别?

2.参考答案

这两个看似简单的符号,其实内容还不少。我们一起来看看。

2.1 通配符中

通配符在linux中通常用来匹配/找文件名或目录名。
最常用的就是 ls -l *.txt显示出所有以.txt结尾的文件

2.1.1 {} 花括号,大括号,生产序列
[root@showregular]#echo{a..z}{0..9}
abcdefghijklmnopqrstuvwxyz0123456789

用来生产数字,字母序列或者他们的组合

[root@showregular]#echostu{0..9}
stu0stu1stu2stu3stu4stu5stu6stu7stu8stu9
2.1.2 []表示一个筐或括号表达式

[abc]表示a或者b或者c,即字母abc中的任何一个
[a-z]表示字母a到z中的任何一个字母

[root@showtest]#toucholdboy{0..20}.txt
[root@showtest]#lsoldboy[0-9]*oldboy0.txt
oldboy12.txtoldboy15.txtoldboy18.txtoldboy20.txtoldboy4.txtoldboy7.txt
oldboy10.txtoldboy13.txtoldboy16.txtoldboy19.txtoldboy2.txtoldboy5.txtoldboy8.txt
oldboy11.txtoldboy14.txtoldboy17.txtoldboy1.txtoldboy3.txtoldboy6.txtoldboy9.txt
[root@showtest]#lsoldboy[0-9].txt
oldboy0.txtoldboy2.txtoldboy4.txtoldboy6.txtoldboy8.txt
oldboy1.txtoldboy3.txtoldboy5.txtoldboy7.txtoldboy9.txt

2.2正则表达式中

正则表达式主要用于在文件中查找内容

2.2.1 {n,m} 花括号 重复前面一个字符n次到m次

也可以理解为 前一个符号连续出现至少n次,最多m次。

[root@showtest]#egrep"o{1,3}"/server/files/regular/oldboy.txt
Iamoldboyteacher!
Ilikebadmintonball,billiardballandchinesechess!
myblogishttp://oldboy.blog.51cto.com
oursizeishttp://blog.oldboyedu.com
not4900000448.
mygod,iamnotoldbey,butOLDBOY!
[root@showtest]#cat/server/files/regular/oldboy.txt
Iamoldboyteacher!
Iteachlinux.

Ilikebadmintonball,billiardballandchinesechess!
myblogishttp://oldboy.blog.51cto.com
oursizeishttp://blog.oldboyedu.com
myqqis49000448not4900000448.
mygod,butOLDBOY!
[root@showtest]#egrep"0{1,3}"/server/files/regular/oldboy.txt
myqqis49000448
not4900000448.
[root@showtest]#egrep-o"0{1,3}"/server/files/regular/oldboy.txt
000
000
00

表示重复数字0至少1次最多3次。
或者数字0连续出现了至少1次最多3次。

2.2.2 [] 表示筐 [abc] 表示a或者b或者c

其实在正则表达式中和通配符中[]的意思是类似的。都表示一个筐 筐里面的东西[abc] a或者b或者c.
[oldboy]表示的是oldboy这几个字字母的任何一个字母

[root@showtest]#grep"[abc]"/server/files/regular/oldboy.txtIamoldboyteacher!
Iteachlinux.
Ilikebadmintonball,billiardballandchinesechess!
myblogishttp://oldboy.blog.51cto.com
oursizeishttp://blog.oldboyedu.com
mygod,butOLDBOY!
[root@showtest]#grep-o"[abc]"/server/files/regular/oldboy.txta
b
a
c
a
c
b
a
b
a
b
a
b
a
a
c
c
b
b
b
c
c
b
b
c
a
b
b

2.3 总结

{}最常用的就是生成序列echo {a..z}
[]最常用的功能是正则表达式中的筐,表示或者 [abc] [a-z] [0-9]

3.统计信息

今天是每日一题陪伴大家的第51天期待你的进步

对于题目和答案的任何疑问,请在博客评论区留言
往期题目索引

http://www.jb51.cc/article/p-dxklwfhw-bcy.html

【老鸟分享】Linux命令行终端提示符多种实用技巧!
https://mp.weixin.qq.com/s/g-bX6WVjJubv3ShY7jqs0Q

猜你在找的正则表达式相关文章